Class: DTR::WorkingEnv

Inherits:
Object show all
Defined in:
lib/dtr/shared/working_env.rb

Instance Method Summary collapse

Constructor Details

#initializeWorkingEnv

Returns a new instance of WorkingEnv.



17
18
19
20
# File 'lib/dtr/shared/working_env.rb', line 17

def initialize
  files = (defined?($argv_dup) && $argv_dup ? $argv_dup : []).dup
  @env = {:libs => $LOAD_PATH.dup, :files => files, :created_at => Time.now.to_s, :dtr_master_env => ENV['DTR_MASTER_ENV'], :agent_env_setup_cmd => ENV['DTR_AGENT_ENV_SETUP_CMD'], :identifier => "#{Time.now.to_s}:#{rand}:#{object_id}", :host => Socket.gethostname, :pwd => Dir.pwd}
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(m, *args, &block) ⇒ Object



38
39
40
41
42
43
44
# File 'lib/dtr/shared/working_env.rb', line 38

def method_missing(m, *args, &block)
  if args.blank?
    self[m]
  else
    super
  end
end

Instance Method Details

#==(obj) ⇒ Object



34
35
36
# File 'lib/dtr/shared/working_env.rb', line 34

def ==(obj)
  obj && obj[:identifier] == self[:identifier]
end

#[](key) ⇒ Object



22
23
24
# File 'lib/dtr/shared/working_env.rb', line 22

def [](key)
  @env[key]
end

#[]=(key, value) ⇒ Object



26
27
28
# File 'lib/dtr/shared/working_env.rb', line 26

def []=(key, value)
  @env[key] = value
end

#to_sObject



30
31
32
# File 'lib/dtr/shared/working_env.rb', line 30

def to_s
  @env.inspect
end