module Rhymba::Configuration

Defines constants and methods related to configuration

Constants

DEFAULT_ACCESS_SECRET
DEFAULT_ACCESS_TOKEN

By default, don’t set an token

DEFAULT_ADAPTER

The adapter that will be used to connect if none is set

@note The default faraday adapter is Net::HTTP.

DEFAULT_CA_FILE
DEFAULT_CA_PATH

Default openssl CA_PATH and CA_FILE path

DEFAULT_ENDPOINT

The endpoint that will be used to connect if none is set

@note Set for search. others being

search: search.mcnemanager.com/current/content.odata/ purchases-token: purchases.mcnemanager.com/ stream-download-token: dispatch.mcnemanager.com/current/ stream-download: dispatch.mcnemanager.com/current/content.odata/

DEFAULT_MIDDLEWARES
DEFAULT_POST_HEADER

default post headers

DEFAULT_PROXY

By default, don’t use a proxy server

DEFAULT_USER_AGENT

The user agent that will be sent to the API endpoint if none is set

VALID_OPTIONS_KEYS

An array of valid keys in the options hash when configuring a {Rhymba::API}

Public Class Methods

extended(base) click to toggle source

When this module is extended, set all configuration options to their default values

# File lib/rhymba/configuration.rb, line 76
def self.extended(base)
  base.reset
end

Public Instance Methods

configure() { |self| ... } click to toggle source

Convenience method to allow configuration options to be set in a block

# File lib/rhymba/configuration.rb, line 81
def configure
  yield self
end
options() click to toggle source

Create a hash of options and their values

# File lib/rhymba/configuration.rb, line 86
def options
  VALID_OPTIONS_KEYS.inject({}) do |option, key|
    option.merge!(key => send(key))
  end
end
reset() click to toggle source

Reset all configuration options to defaults

# File lib/rhymba/configuration.rb, line 93
def reset
  self.adapter       = DEFAULT_ADAPTER
  self.access_secret = DEFAULT_ACCESS_SECRET
  self.access_token  = DEFAULT_ACCESS_TOKEN
  self.endpoint      = DEFAULT_ENDPOINT
  self.user_agent    = DEFAULT_USER_AGENT
  self.proxy         = DEFAULT_PROXY
  self.ca_path       = DEFAULT_CA_PATH
  self.ca_file       = DEFAULT_CA_FILE
  self.middlewares   = DEFAULT_MIDDLEWARES
  self.post_header   = DEFAULT_POST_HEADER
end