Sha256: 819fd710241142c2ce9a0f7362914b3f7f23b84d288981dcaa8e3a2277d32b4d
Contents?: true
Size: 997 Bytes
Versions: 2
Compression:
Stored size: 997 Bytes
Contents
module LinkedIn module Configuration module ClassConfiguration def config @config ||= reset end def reset @config = OpenStruct.new default_config end end module InstanceConfiguration def config @config ||= reset end def reset @config = self.class.config.dup end end module BaseConfiguration def configure(config={}, &block) self.config.marshal_load self.config.marshal_dump.merge(config) yield self.config if block_given? self.config end def load(file_path='linkedin.yml') config = YAML::load(File.open(file_path)).symbolize_keys configure config end def defaults(*keys) config.marshal_dump.slice *keys end end include BaseConfiguration include InstanceConfiguration def self.included(klass) klass.extend BaseConfiguration klass.extend ClassConfiguration end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
linkedin2-0.0.5 | lib/linkedin/configuration.rb |
linkedin2-0.0.4 | lib/linkedin/configuration.rb |