Class: Rfm::Factory::ScriptFactory
- Inherits:
-
CaseInsensitiveHash
- Object
- Hash
- CaseInsensitiveHash
- Rfm::Factory::ScriptFactory
- Defined in:
- lib/rfm/utilities/factory.rb
Overview
:nodoc: all
Instance Method Summary collapse
- #[](script_name) ⇒ Object
- #all ⇒ Object
-
#initialize(server, database) ⇒ ScriptFactory
constructor
A new instance of ScriptFactory.
- #names ⇒ Object
Methods inherited from CaseInsensitiveHash
Methods inherited from Hash
#rfm_filter, #rfm_only, #to_cih
Constructor Details
#initialize(server, database) ⇒ ScriptFactory
Returns a new instance of ScriptFactory.
128 129 130 131 132 |
# File 'lib/rfm/utilities/factory.rb', line 128 def initialize(server, database) @server = server @database = database @loaded = false end |
Instance Method Details
#[](script_name) ⇒ Object
134 135 136 |
# File 'lib/rfm/utilities/factory.rb', line 134 def [](script_name) super or (self[script_name] = Rfm::Metadata::Script.new(script_name, @database)) end |
#all ⇒ Object
138 139 140 141 142 143 144 145 146 147 148 |
# File 'lib/rfm/utilities/factory.rb', line 138 def all if !@loaded xml = @server.connect(@database.account_name, @database.password, '-scriptnames', {"-db" => @database.name}).body Rfm::Resultset.new(xml, :database_object => @database).each {|record| name = record['SCRIPT_NAME'] self[name] = Rfm::Metadata::Script.new(name, @database) if self[name] == nil } @loaded = true end self end |
#names ⇒ Object
150 151 152 |
# File 'lib/rfm/utilities/factory.rb', line 150 def names keys end |