Class: Rfm::Factory::ScriptFactory

Inherits:
CaseInsensitiveHash show all
Defined in:
lib/rfm/utilities/factory.rb

Overview

:nodoc: all

Instance Method Summary (collapse)

Methods inherited from CaseInsensitiveHash

#[]=

Constructor Details

- (ScriptFactory) initialize(server, database)

A new instance of ScriptFactory



113
114
115
116
117
# File 'lib/rfm/utilities/factory.rb', line 113

def initialize(server, database)
  @server = server
  @database = database
  @loaded = false
end

Instance Method Details

- (Object) [](script_name)



119
120
121
# File 'lib/rfm/utilities/factory.rb', line 119

def [](script_name)
  super or (self[script_name] = Rfm::Metadata::Script.new(script_name, @database))
end

- (Object) all



123
124
125
126
127
128
129
130
131
132
# File 'lib/rfm/utilities/factory.rb', line 123

def all
  if !@loaded
    Rfm::Resultset.new(@server, @server.connect(@database., @database.password, '-scriptnames', {"-db" => @database.name}).body, nil).each {|record|
      name = record['SCRIPT_NAME']
      self[name] = Rfm::Metadata::Script.new(name, @database) if self[name] == nil
    }
    @loaded = true
  end
  self
end

- (Object) names



134
135
136
# File 'lib/rfm/utilities/factory.rb', line 134

def names
	keys
end