Sha256: 6a810bad074d4c9a616253c12f7d944ce8a92bf3b2cdabf64b10bf1bd1cd1948
Contents?: true
Size: 1.04 KB
Versions: 11
Compression:
Stored size: 1.04 KB
Contents
require "ostruct" module Authsignal class Configuration def self.config_option(name) define_method(name) do read_value(name) end define_method("#{name}=") do |value| set_value(name, value) end end config_option :api_secret_key config_option :base_uri def initialize @config_values = {} # set default attribute values @defaults = OpenStruct.new({ base_uri: 'https://signal.authsignal.com/v1/' }) end def [](key) read_value(key) end def []=(key, value) set_value(key, value) end private def read_value(name) if @config_values.has_key?(name) @config_values[name] else @defaults.send(name) end end def set_value(name, value) @config_values[name] = value end end end
Version data entries
11 entries across 11 versions & 1 rubygems