Sha256: 9b178c8537fabacac4835c19f9493b37a87e8d4c29118f1dfb6e8319a087c532

Contents?: true

Size: 490 Bytes

Versions: 1

Compression:

Stored size: 490 Bytes

Contents

module Resugan
  class Context
    def initialize(namespace = '')
      @namespace = namespace
      @events = {}
    end

    def register(event, params = {})
      event = event.to_sym
      payload = { params: params }
      if @events[event]
        @events[event] << payload
      else
        @events[event] = [payload]
      end
    end

    def invoke
      @events.each do |k,v|
        puts "fire #{k}"
        Resugan::Kernel.invoke(@namespace, k, v)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
resugan-0.1.0 lib/resugan/context.rb