Class: Rfm::Factory::LayoutFactory
- Inherits:
-
CaseInsensitiveHash
- Object
- Hash
- CaseInsensitiveHash
- Rfm::Factory::LayoutFactory
- Defined in:
- lib/rfm/utilities/factory.rb
Instance Method Summary collapse
- #[](layout_name) ⇒ Object
- #all ⇒ Object
-
#initialize(server, database) ⇒ LayoutFactory
constructor
A new instance of LayoutFactory.
Methods inherited from CaseInsensitiveHash
Constructor Details
#initialize(server, database) ⇒ LayoutFactory
Returns a new instance of LayoutFactory.
37 38 39 40 41 |
# File 'lib/rfm/utilities/factory.rb', line 37 def initialize(server, database) @server = server @database = database @loaded = false end |
Instance Method Details
#[](layout_name) ⇒ Object
43 44 45 |
# File 'lib/rfm/utilities/factory.rb', line 43 def [](layout_name) super or (self[layout_name] = Rfm::Layout.new(layout_name, @database)) end |
#all ⇒ Object
47 48 49 50 51 52 53 54 55 56 |
# File 'lib/rfm/utilities/factory.rb', line 47 def all if !@loaded Rfm::Resultset.new(@server, @server.connect(@server.state[:account_name], @server.state[:password], '-layoutnames', {"-db" => @database.name}).body, nil).each {|record| name = record['LAYOUT_NAME'] self[name] = Rfm::Layout.new(name, @database) if self[name] == nil } @loaded = true end self.keys end |