module AP::Configuration

thanks to jnunemaker’s twitter gem for this Defines constants and methods related to configuration

Constants

DEFAULT_API_KEY
DEFAULT_SEARCH_SETTINGS
DEFAULT_USER_AGENT
VALID_OPTIONS_KEYS

An array of valid keys in the options hash

Public Class Methods

extended(base) click to toggle source

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

# File lib/ap/configuration.rb, line 15
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/ap/configuration.rb, line 20
def configure
  yield self
end
options() click to toggle source

Create a hash of options and their values

# File lib/ap/configuration.rb, line 25
def options
  options = {}
  VALID_OPTIONS_KEYS.each{|k| options[k] = send(k) }
  options
end
reset() click to toggle source

Reset all configuration options to defaults

# File lib/ap/configuration.rb, line 40
def reset
  self.api_key                = DEFAULT_API_KEY
  self.user_agent             = DEFAULT_USER_AGENT
  self.search_query_defaults  = DEFAULT_SEARCH_SETTINGS
  self
end