Sha256: d5c596b966fa8100a8b1918400632447c3a4fafbbf84bb49c465da58cc3f4cfd

Contents?: true

Size: 1.07 KB

Versions: 1

Compression:

Stored size: 1.07 KB

Contents

class Environment < Hash

  def initialize
    self[:home]=Environment.home
    self[:machine]=Environment.machine
    self[:user]=Environment.user
  end

  def self.home 
    ["USERPROFILE","HOME"].each {|v|
      return ENV[v].gsub('\\','/') unless ENV[v].nil?
    }
    dir="~"
    dir=ENV["HOME"] unless ENV["HOME"].nil?
    dir=ENV["USERPROFILE"].gsub('\\','/') unless ENV["USERPROFILE"].nil?
    return dir
  end

  def self.machine
     if !ENV['COMPUTERNAME'].nil? 
	   return ENV['COMPUTERNAME']
	 end

     machine = `hostname`
     machine = machine.split('.')[0] if machine.include?('.')
	 return machine.strip
  end

  def self.user
  	return ENV['USER'] if !ENV['USER'].nil?  #on Unix
    ENV['USERNAME']
  end

  def self.dev_root
    ["DEV_HOME","DEV_ROOT"].each {|v|
      if !ENV[v].nil?
        if(ENV[v].include?(';'))
          ENV[v].split(';').each{|d|
            return d if File.exists?(d)
          }
        else
          return ENV[v].gsub('\\','/')
        end
      end
    }
    dir=home
   return dir
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
dev-2.0.46 lib/environment.rb