Class: Nucleo::Models::SiteFeed

Inherits:
Object
  • Object
show all
Defined in:
lib/nucleo/models/site_feed.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(attributes = {}) ⇒ Nucleo::Models::SiteFeed

Returns an instanc eof the Site Feed domain model

Parameters:

  • attributes (Hash) (defaults to: {})


11
12
13
# File 'lib/nucleo/models/site_feed.rb', line 11

def initialize(attributes={})
  @attributes = attributes
end

Class Method Details

.retrieve(id, params = {}) ⇒ Object



15
16
17
18
19
# File 'lib/nucleo/models/site_feed.rb', line 15

def self.retrieve(id, params={})
  response_body = Nucleo::Requests::SiteFeed.retrieve(id, params)

  self.new(response_body)
end

Instance Method Details

#alertsNucleo::Models::Feeds

Returns the Alerts as Feeds



56
57
58
# File 'lib/nucleo/models/site_feed.rb', line 56

def alerts
  Nucleo::Models::Feeds.new(@attributes.fetch('alerts', []))
end

#alerts?Boolean

Returns true if there are any alert feed items

Returns:

  • (Boolean)


63
64
65
# File 'lib/nucleo/models/site_feed.rb', line 63

def alerts?
  self.alerts.any?
end

#changesNucleo::Models::Rules

Returns the changes as Rules

Returns:

  • (Nucleo::Models::Rules)


70
71
72
# File 'lib/nucleo/models/site_feed.rb', line 70

def changes
  Nucleo::Models::Rules.new(@attributes.fetch('changes', []))
end

#changes?Boolean

Returns true if there are any change rules

Returns:

  • (Boolean)


77
78
79
# File 'lib/nucleo/models/site_feed.rb', line 77

def changes?
  self.changes.any?
end

#metricsNucleo::Models::Feeds

Returns the Metrics as Feeds



42
43
44
# File 'lib/nucleo/models/site_feed.rb', line 42

def metrics
  Nucleo::Models::Feeds.new(@attributes.fetch('metrics', []))
end

#metrics?Boolean

Returns true if there are any Metric feed items

Returns:

  • (Boolean)


49
50
51
# File 'lib/nucleo/models/site_feed.rb', line 49

def metrics?
  self.metrics.any?
end

#pagesNucleo::Models::FeedTypes::Analytics::Pages

Returns the Analytics Pages domain model

Returns:

  • (Nucleo::Models::FeedTypes::Analytics::Pages)


24
25
26
27
28
29
30
# File 'lib/nucleo/models/site_feed.rb', line 24

def pages
  if @attributes.has_key?('pages')
    Nucleo::Models::FeedTypes::Analytics::Site::Pages.new(@attributes.fetch('pages', {}))
  else
    nil
  end
end

#pages?Boolean

Returns true if there is an Analytics Pages domain model

Returns:

  • (Boolean)


35
36
37
# File 'lib/nucleo/models/site_feed.rb', line 35

def pages?
  self.pages.present?
end