Module: Announcer::Mixins::HasConfig

Included in:
Event, Plugins::Plugin, Publishers::Publisher, Subscription
Defined in:
lib/announcer/mixins/has_config.rb

Defined Under Namespace

Modules: ClassMethods

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



4
5
6
7
# File 'lib/announcer/mixins/has_config.rb', line 4

def self.included(base)
  raise "HasConfig requires HasInstance" unless base < HasInstance
  base.extend(ClassMethods)
end

Instance Method Details

#_has_config_configObject



35
36
37
# File 'lib/announcer/mixins/has_config.rb', line 35

def _has_config_config
  @__has_config_config ||= _has_config_load_config.dup
end

#_has_config_load_configObject



39
40
41
42
# File 'lib/announcer/mixins/has_config.rb', line 39

def _has_config_load_config
  keys = self.class.config_keys
  keys.inject(instance.config) { |c, k| c.send(k) }
end

#configObject



31
32
33
# File 'lib/announcer/mixins/has_config.rb', line 31

def config
  _has_config_config
end