class TokenOfFire::Scope

Public Class Methods

new(event_bus, filter={}) click to toggle source
# File lib/token_of_fire/scope.rb, line 3
def initialize(event_bus, filter={})
  @event_bus = event_bus
  raise RuntimeError, "Provide hash please" unless filter.is_a? Hash
  @filter = filter
  @subscriptions = []
end

Public Instance Methods

attach(event_name, handler, method_name) click to toggle source
# File lib/token_of_fire/scope.rb, line 16
def attach(event_name, handler, method_name)
  @subscriptions.push({
    :event_name => event_name,
    :handler => handler,
    :method_name => method_name
  })
  @subscriptions
end
attach_subscriptions(list) click to toggle source
# File lib/token_of_fire/scope.rb, line 10
def attach_subscriptions(list)
  list.each do |t|
    attach(t[0], t[1], t[2])
  end
end
filter() click to toggle source
# File lib/token_of_fire/scope.rb, line 46
def filter
  @filter
end
scope(filter={}) click to toggle source
# File lib/token_of_fire/scope.rb, line 25
def scope(filter={})
  TokenOfFire::Scope.new(@event_bus, @filter.merge(filter))
end
subscriptions() click to toggle source
# File lib/token_of_fire/scope.rb, line 29
def subscriptions
  @subscriptions
end
token() click to toggle source

def dettach(:name_of_event) @scope_a.dettach(:name_of_event)

# File lib/token_of_fire/scope.rb, line 37
def token
  TokenOfFire::Token.new(@event_bus, self)
  #  starts with all subscriptions previously attached to a scope
end
unique_token() click to toggle source
# File lib/token_of_fire/scope.rb, line 42
def unique_token
  TokenOfFire::Token.new(@event_bus, self, true)
end