Class: FoggyBottom::Status

Inherits:
Object
  • Object
show all
Includes:
ActiveModel::AttributeMethods, ActiveModel::Dirty, ActiveModel::Serialization, Columns::Status
Defined in:
lib/foggy_bottom/status.rb

Constant Summary

Constants included from Columns::Status

Columns::Status::ALL_COLUMNS

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Columns::Status

included

Constructor Details

#initialize(attributes = {}) ⇒ Status

Returns a new instance of Status.



32
33
34
# File 'lib/foggy_bottom/status.rb', line 32

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

Instance Attribute Details

#apiObject

Returns the value of attribute api.



10
11
12
# File 'lib/foggy_bottom/status.rb', line 10

def api
  @api
end

Class Method Details

.all(api) ⇒ Object



15
16
17
18
19
# File 'lib/foggy_bottom/status.rb', line 15

def all(api)
  api.exec(:listStatuses).css("status").collect do |details|
    create_from_xml(details, api)
  end
end

.create_from_xml(xml, api) ⇒ Object



21
22
23
24
25
26
27
28
29
# File 'lib/foggy_bottom/status.rb', line 21

def create_from_xml(xml, api)
  new( {}.tap do |attributes|
    (FoggyBottom::Columns::Status::ALL_COLUMNS ).each do |col|
      attributes[col] = xml.at_css(col).content
    end
  end).tap do |instance|
    instance.api = api
  end
end