Class: Gemirro::Configuration
- Inherits:
-
Confstruct::Configuration
- Object
- Confstruct::Configuration
- Gemirro::Configuration
- Defined in:
- lib/gemirro/configuration.rb
Overview
Configuration class used for storing data about a mirror such as the destination directory, source, ignored Gems, etc.
Instance Attribute Summary collapse
-
#ignored_gems ⇒ Hash
Returns a Hash containing various Gems to ignore and their versions.
-
#logger ⇒ Logger
Returns the logger.
-
#mirror_directory ⇒ Gemirro::MirrorDirectory
readonly
Return mirror directory.
-
#source ⇒ Object
Returns the value of attribute source.
Class Method Summary collapse
-
.default_configuration_file ⇒ String
Returns default configuration file path.
-
.marshal_identifier ⇒ String
Returns the name of the directory that contains the quick specification files.
-
.marshal_version ⇒ String
Returns a String containing the Marshal version.
-
.template_directory ⇒ String
Returns the template path to init directory.
-
.versions_file ⇒ String
Returns the name of the file that contains an index of all the versions.
-
.views_directory ⇒ String
Returns the views path to render templates.
Instance Method Summary collapse
-
#define_source(name, url, &block) ⇒ Object
Define the source to mirror.
-
#gems_directory ⇒ String
Returns gems directory.
-
#ignore_gem(name, version) ⇒ Object
Adds a Gem to the list of Gems to ignore.
-
#ignore_gem?(name, version) ⇒ TrueClass|FalseClass
Checks if a Gem should be ignored.
Instance Attribute Details
#ignored_gems ⇒ Hash
Returns a Hash containing various Gems to ignore and their versions.
112 113 114 |
# File 'lib/gemirro/configuration.rb', line 112 def ignored_gems @ignored_gems end |
#logger ⇒ Logger
Returns the logger
30 31 32 |
# File 'lib/gemirro/configuration.rb', line 30 def logger @logger end |
#mirror_directory ⇒ Gemirro::MirrorDirectory (readonly)
Return mirror directory
94 95 96 |
# File 'lib/gemirro/configuration.rb', line 94 def mirror_directory @mirror_directory end |
#source ⇒ Object
Returns the value of attribute source.
23 24 25 |
# File 'lib/gemirro/configuration.rb', line 23 def source @source end |
Class Method Details
.default_configuration_file ⇒ String
Returns default configuration file path
57 58 59 |
# File 'lib/gemirro/configuration.rb', line 57 def self.default_configuration_file File.('config.rb', Dir.pwd) end |
.marshal_identifier ⇒ String
Returns the name of the directory that contains the quick specification files.
67 68 69 |
# File 'lib/gemirro/configuration.rb', line 67 def self.marshal_identifier "Marshal.#{marshal_version}" end |
.marshal_version ⇒ String
Returns a String containing the Marshal version.
85 86 87 |
# File 'lib/gemirro/configuration.rb', line 85 def self.marshal_version "#{Marshal::MAJOR_VERSION}.#{Marshal::MINOR_VERSION}" end |
.template_directory ⇒ String
Returns the template path to init directory
39 40 41 |
# File 'lib/gemirro/configuration.rb', line 39 def self.template_directory File.('../../../template', __FILE__) end |
.versions_file ⇒ String
Returns the name of the file that contains an index of all the versions.
76 77 78 |
# File 'lib/gemirro/configuration.rb', line 76 def self.versions_file "specs.#{marshal_version}.gz" end |
.views_directory ⇒ String
Returns the views path to render templates
48 49 50 |
# File 'lib/gemirro/configuration.rb', line 48 def self.views_directory File.('../../../views', __FILE__) end |
Instance Method Details
#define_source(name, url, &block) ⇒ Object
Define the source to mirror.
145 146 147 148 149 150 |
# File 'lib/gemirro/configuration.rb', line 145 def define_source(name, url, &block) source = Source.new(name, url) source.instance_eval(&block) @source = source end |
#gems_directory ⇒ String
Returns gems directory
103 104 105 |
# File 'lib/gemirro/configuration.rb', line 103 def gems_directory File.join(destination, 'gems') end |
#ignore_gem(name, version) ⇒ Object
Adds a Gem to the list of Gems to ignore.
122 123 124 125 |
# File 'lib/gemirro/configuration.rb', line 122 def ignore_gem(name, version) ignored_gems[name] ||= [] ignored_gems[name] << version end |
#ignore_gem?(name, version) ⇒ TrueClass|FalseClass
Checks if a Gem should be ignored.
134 135 136 |
# File 'lib/gemirro/configuration.rb', line 134 def ignore_gem?(name, version) ignored_gems[name].include?(version) end |