module StinkBomb
Constants
- VERSION
Public Class Methods
bombs()
click to toggle source
# File lib/stink_bomb.rb, line 30 def bombs configuration.bombs end
configuration()
click to toggle source
# File lib/stink_bomb.rb, line 18 def configuration @configuration ||= Configuration.new end
configure() { |configuration| ... }
click to toggle source
# File lib/stink_bomb.rb, line 22 def configure yield configuration end
create(deadline, message: nil)
click to toggle source
# File lib/stink_bomb.rb, line 12 def create(deadline, message: nil) deadline = parse(deadline) message = fill_in_message(deadline, message) bombs.each { |bomb| bomb.trigger(deadline, message: message) } end
reset()
click to toggle source
# File lib/stink_bomb.rb, line 26 def reset @configuration = nil end
Private Class Methods
configured_message()
click to toggle source
# File lib/stink_bomb.rb, line 40 def configured_message StinkBomb.configuration.message end
fill_in_message(deadline, message)
click to toggle source
# File lib/stink_bomb.rb, line 36 def fill_in_message(deadline, message) (message || configured_message).gsub('{deadline}', deadline.to_s) end
parse(time)
click to toggle source
# File lib/stink_bomb.rb, line 44 def parse(time) if time.is_a?(String) Time.parse(time) elsif time.respond_to?(:to_time) time.to_time else fail 'Parameter has to be a Time, Date, or a String' end end