Module: Hull::Config
- Included in:
- Hull
- Defined in:
- lib/hull/config.rb
Overview
Defines constants and methods related to configuration
Constant Summary collapse
- DEFAULT_ADAPTER =
The HTTP connection adapter that will be used to connect if none is set
:net_http- DEFAULT_CONNECTION_OPTIONS =
The Faraday connection options if none is set
{}
- DEFAULT_APP_SECRET =
The client ID if none is set
ENV['HULL_APP_SECRET']
- DEFAULT_APP_ID =
ENV['HULL_APP_ID']
- DEFAULT_ENDPOINT =
The endpoint that will be used to connect if none is set
ENV['HULL_ORG_URL']
- DEFAULT_CACHE_STORE =
nil- DEFAULT_PROXY =
nil- DEFAULT_USER_AGENT =
The value sent in the ‘User-Agent’ header if none is set
"Hull Ruby Gem #{Hull::VERSION}"- DEFAULT_LOGGER =
nil- VALID_OPTIONS_KEYS =
An array of valid keys in the options hash when configuring a Hull::Client
[ :proxy, :adapter, :connection_options, :app_id, :app_secret, :endpoint, :user_agent, :cache_store, :logger ]
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.
- #domain ⇒ Object
-
#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
52 53 54 |
# File 'lib/hull/config.rb', line 52 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
57 58 59 60 |
# File 'lib/hull/config.rb', line 57 def configure yield self self end |
#domain ⇒ Object
47 48 49 |
# File 'lib/hull/config.rb', line 47 def domain @domain ||= URI.parse(endpoint).host unless endpoint.nil? end |
#options ⇒ Object
Create a hash of options and their values
63 64 65 66 67 |
# File 'lib/hull/config.rb', line 63 def = {} VALID_OPTIONS_KEYS.each{|k| [k] = send(k)} end |
#reset ⇒ Object
Reset all configuration options to defaults
70 71 72 73 74 75 76 77 78 79 80 81 82 |
# File 'lib/hull/config.rb', line 70 def reset @domain = nil self.proxy = DEFAULT_PROXY self.logger = DEFAULT_LOGGER self.adapter = DEFAULT_ADAPTER self. = DEFAULT_CONNECTION_OPTIONS self.app_id = DEFAULT_APP_ID self.app_secret = DEFAULT_APP_SECRET self.endpoint = DEFAULT_ENDPOINT self.user_agent = DEFAULT_USER_AGENT self.cache_store = DEFAULT_CACHE_STORE self end |