Sha256: 90124e7fcdd6dbcdab49fa1fe2148ce2c044d8cd721e20b5439993b39a2d631f

Contents?: true

Size: 694 Bytes

Versions: 70

Compression:

Stored size: 694 Bytes

Contents

module Redcar
  class Application
    class EventSpewer
      attr_accessor :within
      
      def initialize
        @within = {}
      end
      
      def ignore?(name, *args)
        !!@within[[name, args]]
      end
      
      def ignore(name, *args)
        @within[[name, args]] = true
        begin
          yield
        ensure
          @within.delete([name, args])
        end
      end
      
      def create(name, *args)
        Redcar.plugin_manager.objects_implementing(:application_event_handler).each do |object|
          handler = object.application_event_handler
          handler.send(name, *args) if handler.respond_to?(name)
        end
      end
    end
  end
end

Version data entries

70 entries across 70 versions & 2 rubygems

Version Path
redcar-0.13 plugins/application/lib/application/event_spewer.rb
redcar-dev-0.13.5dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.13.4dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.13.3dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.13.2dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.13.1dev plugins/application/lib/application/event_spewer.rb
redcar-0.12.1 plugins/application/lib/application/event_spewer.rb
redcar-dev-0.13.0dev plugins/application/lib/application/event_spewer.rb
redcar-0.12 plugins/application/lib/application/event_spewer.rb
redcar-dev-0.12.27dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.12.26dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.12.25dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.12.24dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.12.23dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.12.22dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.12.21dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.12.20dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.12.19dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.12.18dev plugins/application/lib/application/event_spewer.rb
redcar-dev-0.12.17dev plugins/application/lib/application/event_spewer.rb