Sha256: 641bc8de447c41865868bfa505e50ebf66ab7a09581f63b40fe528b5f6fcce3e

Contents?: true

Size: 1.17 KB

Versions: 1

Compression:

Stored size: 1.17 KB

Contents

require 'core/constants'
module Radon
class Environments

  # The list of all supported environments and their associeted data paths
  @@all = {
          'gradle' => File.join(DATA_DIR, 'gradle.zip'),
          'java'   => File.join(DATA_DIR, 'java.zip'),
          'maven'  => File.join(DATA_DIR, 'maven.zip'),
          'python' => File.join(DATA_DIR, 'python.zip'),
          'c'      => File.join(DATA_DIR, 'c.zip'),
          'ruby'   => File.join(DATA_DIR, 'ruby.zip'),
          'crystal'=> File.join(DATA_DIR, 'crystal_app.zip'),
          'go_s'   => File.join(DATA_DIR, 'go_s.zip'),
          'website'=> File.join(DATA_DIR, 'website.zip')
        }

  # Gets all environments as an array of strings
  def self.get_all_names
    @@all.keys
  end

  # Gets the value (corrosponding zip) of the key
  def self.get_target_of(key)
    @@all[key]
  end

  # Extract the zip
  def self.extract(key, target)
    envs = get_all_names
    if envs.include? key
      send "extract_#{key}", target
    else
      fail_with("#{key} is not a supported environment.\nYou can suggest it be added at https://github.com/cbrnrd/radon/issues")
    end
  end

end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
radon-0.1.8 lib/core/environments.rb