Class: Newshound::Warnings::Base
- Inherits:
-
Object
- Object
- Newshound::Warnings::Base
- Defined in:
- lib/newshound/warnings/base.rb
Overview
Base class for warning source adapters Each adapter is responsible for:
-
Fetching recent warnings from its specific data source
-
Formatting warning data for reports and banners
Subclasses must implement:
-
#recent(time_range:, limit:) - Returns a collection of warning records
-
#format_for_report(warning, number) - Formats a single warning for Slack/report display
-
#format_for_banner(warning) - Formats a single warning for banner UI
Instance Method Summary collapse
-
#format_for_banner(warning) ⇒ Hash
Formats a warning for banner UI display.
-
#format_for_report(warning, number) ⇒ String
Formats a warning for report/Slack display.
-
#recent(time_range:, limit:) ⇒ Array
Fetches recent warnings from the data source.
Instance Method Details
#format_for_banner(warning) ⇒ Hash
Formats a warning for banner UI display
37 38 39 |
# File 'lib/newshound/warnings/base.rb', line 37 def (warning) raise NotImplementedError, "#{self.class} must implement #format_for_banner" end |
#format_for_report(warning, number) ⇒ String
Formats a warning for report/Slack display
29 30 31 |
# File 'lib/newshound/warnings/base.rb', line 29 def format_for_report(warning, number) raise NotImplementedError, "#{self.class} must implement #format_for_report" end |
#recent(time_range:, limit:) ⇒ Array
Fetches recent warnings from the data source
20 21 22 |
# File 'lib/newshound/warnings/base.rb', line 20 def recent(time_range:, limit:) raise NotImplementedError, "#{self.class} must implement #recent" end |