Module: Swiftype::Configuration
- Included in:
- Swiftype
- Defined in:
- lib/swiftype/configuration.rb
Constant Summary collapse
- DEFAULT_ENDPOINT =
"https://api.swiftype.com/api/v1/"
- DEFAULT_USER_AGENT =
"Swiftype-Ruby/#{Swiftype::VERSION}"
- VALID_OPTIONS_KEYS =
[ :api_key, :user_agent, :platform_client_id, :platform_client_secret, :endpoint ]
Class Method Summary collapse
Instance Method Summary collapse
-
#authenticated_url=(url) ⇒ Object
Set api_key and endpoint based on a URL with HTTP authentication.
-
#configure {|_self| ... } ⇒ Object
Yields the Swiftype::Configuration module which can be used to set configuration options.
-
#endpoint=(endpoint) ⇒ Object
setter for endpoint that ensures it always ends in ‘/’.
-
#options ⇒ Object
Return a hash of the configured options.
-
#reset ⇒ Object
Reset configuration to default values.
Class Method Details
.extended(base) ⇒ Object
19 20 21 |
# File 'lib/swiftype/configuration.rb', line 19 def self.extended(base) base.reset end |
Instance Method Details
#authenticated_url=(url) ⇒ Object
Set api_key and endpoint based on a URL with HTTP authentication. Useful if you’re using the Swiftype Heroku add-on.
50 51 52 53 54 55 56 |
# File 'lib/swiftype/configuration.rb', line 50 def authenticated_url=(url) uri = URI(url) self.api_key = uri.user uri.user = nil uri.password = nil self.endpoint = uri.to_s end |
#configure {|_self| ... } ⇒ Object
Yields the Swiftype::Configuration module which can be used to set configuration options.
36 37 38 39 |
# File 'lib/swiftype/configuration.rb', line 36 def configure yield self self end |
#endpoint=(endpoint) ⇒ Object
setter for endpoint that ensures it always ends in ‘/’
59 60 61 62 63 64 65 |
# File 'lib/swiftype/configuration.rb', line 59 def endpoint=(endpoint) if endpoint.end_with?('/') @endpoint = endpoint else @endpoint = "#{endpoint}/" end end |
#options ⇒ Object
Return a hash of the configured options.
42 43 44 45 46 |
# File 'lib/swiftype/configuration.rb', line 42 def = {} VALID_OPTIONS_KEYS.each{|k| [k] = send(k)} end |
#reset ⇒ Object
Reset configuration to default values.
24 25 26 27 28 29 30 31 |
# File 'lib/swiftype/configuration.rb', line 24 def reset self.api_key = nil self.endpoint = DEFAULT_ENDPOINT self.user_agent = DEFAULT_USER_AGENT self.platform_client_id = nil self.platform_client_secret = nil self end |