Module: Gems::Configuration
- Included in:
- Gems
- Defined in:
- lib/gems/configuration.rb
Constant Summary collapse
- VALID_OPTIONS_KEYS =
An array of valid keys in the options hash when configuring a Gems::Client
%i[ host key password user_agent username ].freeze
- DEFAULT_HOST =
Set the default API endpoint
ENV['RUBYGEMS_HOST'] ? ENV['RUBYGEMS_HOST'] : 'https://rubygems.org'
- DEFAULT_KEY =
Set the default credentials
Gem.configuration.rubygems_api_key
- DEFAULT_USER_AGENT =
Set the default 'User-Agent' HTTP header
"Gems #{Gems::VERSION}".freeze
Class Method Summary collapse
-
.extended(base) ⇒ Object
When this module is extended, set all configuration options to their default values.
Instance Method Summary collapse
-
#configure {|_self| ... } ⇒ Object
Convenience method to allow configuration options to be set in a block.
-
#options ⇒ Object
Create a hash of options and their values.
-
#reset ⇒ Object
Reset all configuration options to defaults.
Class Method Details
.extended(base) ⇒ Object
When this module is extended, set all configuration options to their default values
28 29 30 |
# File 'lib/gems/configuration.rb', line 28 def self.extended(base) base.reset end |
Instance Method Details
#configure {|_self| ... } ⇒ Object
Convenience method to allow configuration options to be set in a block
33 34 35 |
# File 'lib/gems/configuration.rb', line 33 def configure yield self end |
#options ⇒ Object
Create a hash of options and their values
38 39 40 41 42 |
# File 'lib/gems/configuration.rb', line 38 def = {} VALID_OPTIONS_KEYS.each { |k| [k] = send(k) } end |
#reset ⇒ Object
Reset all configuration options to defaults
45 46 47 48 49 50 51 52 |
# File 'lib/gems/configuration.rb', line 45 def reset self.username = nil self.password = nil self.host = DEFAULT_HOST self.key = DEFAULT_KEY self.user_agent = DEFAULT_USER_AGENT self end |