class SgtnClient::Config
Attributes
app_id[RW]
bundle_mode[RW]
cache_expiry_period[RW]
cert_path[RW]
client_id[RW]
client_secret[RW]
default_language[RW]
device_ipaddress[RW]
disable_cache[RW]
endpoint[RW]
http_proxy[RW]
http_timeout[RW]
ipn_endpoint[RW]
merchant_endpoint[RW]
mode[RW]
openid_client_id[RW]
openid_client_secret[RW]
openid_endpoint[RW]
openid_redirect_uri[RW]
password[RW]
platform_endpoint[RW]
product_name[RW]
rest_endpoint[RW]
rest_token_endpoint[RW]
sandbox_email_address[RW]
signature[RW]
source_bundle[RW]
subject[RW]
token[RW]
token_secret[RW]
translation_bundle[RW]
username[RW]
verbose_logging[RW]
version[RW]
vip_server[RW]
Public Class Methods
config(env = default_environment, override_configuration = {})
click to toggle source
Create or Load Config
object based on given environment and configurations.
Attributes¶ ↑
-
env
(Optional) – Environment name -
override_configuration
(Optional) – Override the configuration given in file.
Example¶ ↑
Config.config Config.config(:development) Config.config(:development, { :app_id => "XYZ" })
# File lib/sgtn-client/core/config.rb, line 109 def config(env = default_environment, override_configuration = {}) if env.is_a? Hash override_configuration = env env = default_environment end if override_configuration.nil? or override_configuration.empty? default_config(env) else default_config(env).dup.merge!(override_configuration) end end
configurations()
click to toggle source
Get raw configurations in Hash format.
# File lib/sgtn-client/core/config.rb, line 131 def configurations @@configurations ||= read_configurations end
configurations=(configs)
click to toggle source
Set configuration
# File lib/sgtn-client/core/config.rb, line 136 def configurations=(configs) @@config_cache = {} @@configurations = configs && Hash[configs.map{|k,v| [k.to_s, v] }] end
configure(options = {}, &block)
click to toggle source
# File lib/sgtn-client/core/config.rb, line 90 def configure(options = {}, &block) begin self.config.merge!(options) rescue Errno::ENOENT self.configurations = { default_environment => options } end block.call(self.config) if block self.config end
Also aliased as: set_config
default_config(env = nil)
click to toggle source
# File lib/sgtn-client/core/config.rb, line 121 def default_config(env = nil) env = (env || default_environment).to_s if configurations[env] @@config_cache[env] ||= new(configurations[env]) else raise SgtnClient::Exceptions::MissingConfig.new("Configuration[#{env}] NotFound") end end
default_environment()
click to toggle source
Get default environment name
# File lib/sgtn-client/core/config.rb, line 80 def default_environment @@default_environment ||= ENV['SGTN_ENV'] || ENV['RACK_ENV'] || ENV['RAILS_ENV'] || "development" end
default_environment=(env)
click to toggle source
Set default environment
# File lib/sgtn-client/core/config.rb, line 86 def default_environment=(env) @@default_environment = env.to_s end
load(file_name, default_env = default_environment)
click to toggle source
# File lib/sgtn-client/core/config.rb, line 71 def load(file_name, default_env = default_environment) @@config_cache = {} @@configurations = read_configurations(file_name) @@default_environment = default_env config end
logger()
click to toggle source
Get logger
# File lib/sgtn-client/core/config.rb, line 147 def logger if @@configurations[:mode] == 'live' and Logging.logger.level == Logger::DEBUG Logging.logger.warn "DEBUG log level not allowed in live mode for security of confidential information. Changing log level to INFO..." Logging.logger.level = Logger::INFO end Logging.logger end
logger=(logger)
click to toggle source
Set logger
# File lib/sgtn-client/core/config.rb, line 142 def logger=(logger) Logging.logger = logger end
new(options)
click to toggle source
Create Config
object
Options(Hash)¶ ↑
-
username
– Username -
password
– Password -
signature
(Optional if certificate present) – Signature -
app_id
– Application ID -
cert_path
(Optional if signature present) – Certificate file path
# File lib/sgtn-client/core/config.rb, line 56 def initialize(options) merge!(options) end
Private Class Methods
read_configurations(file_name = "config/sgtnclient.yml")
click to toggle source
Read configurations from the given file name
Arguments¶ ↑
-
file_name
(Optional) –Configuration
file path
# File lib/sgtn-client/core/config.rb, line 159 def read_configurations(file_name = "config/sgtnclient.yml") erb = ERB.new(File.read(file_name)) erb.filename = file_name YAML.load(erb.result) end
Public Instance Methods
merge!(options)
click to toggle source
Override configurations
# File lib/sgtn-client/core/config.rb, line 61 def merge!(options) options.each do |key, value| send("#{key}=", value) end self end