Class: GalacticSenate::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/galactic-senate/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeConfiguration

Returns a new instance of Configuration.



8
9
10
11
12
13
14
15
16
17
# File 'lib/galactic-senate/configuration.rb', line 8

def initialize
  @redis = nil
  @logger = Logger.new(STDOUT)
  @logger.level = Logger::WARN
  @events = {
      elected: [],
      ousted: [],
      supreme_chancellor_changed: []
  }
end

Instance Attribute Details

#eventsObject

Returns the value of attribute events.



6
7
8
# File 'lib/galactic-senate/configuration.rb', line 6

def events
  @events
end

#loggerObject

Returns the value of attribute logger.



6
7
8
# File 'lib/galactic-senate/configuration.rb', line 6

def logger
  @logger
end

#redisObject

Returns the value of attribute redis.



6
7
8
# File 'lib/galactic-senate/configuration.rb', line 6

def redis
  @redis
end

Instance Method Details

#on(event, &block) ⇒ Object

Raises:

  • (ArgumentError)


20
21
22
23
# File 'lib/galactic-senate/configuration.rb', line 20

def on(event, &block)
  raise ArgumentError, "Invalid event: #{event}" unless @events.key?(event) && event.is_a?(Symbol)
  @events[event] << block
end