Class: FSR::Listener::Base
- Inherits:
-
EventMachine::Protocols::HeaderAndContentProtocol
- Object
- EventMachine::Protocols::HeaderAndContentProtocol
- FSR::Listener::Base
- Defined in:
- lib/fsr/listener/base.rb
Overview
Stupid name. I know.
Instance Attribute Summary (collapse)
-
- (Object) response
(also: #event)
Returns the value of attribute response.
Class Method Summary (collapse)
Instance Method Summary (collapse)
-
- (Object) on_event
override.
- - (Object) post_init
- - (Object) receive_request(header, content)
- - (Object) run_cmd(cmd, *args, &block)
Instance Attribute Details
- (Object) response Also known as: event
Returns the value of attribute response
33 34 35 |
# File 'lib/fsr/listener/base.rb', line 33 def response @response end |
Class Method Details
+ (Object) add_event_hook(event, &block)
13 14 15 |
# File 'lib/fsr/listener/base.rb', line 13 def add_event_hook(event, &block) hooks << [event, block] end |
+ (Object) hooks
9 10 11 |
# File 'lib/fsr/listener/base.rb', line 9 def hooks @hooks ||= [] end |
+ (Object) register_cmd(klass)
17 18 19 |
# File 'lib/fsr/listener/base.rb', line 17 def register_cmd(klass) class_eval "def \#{klass.cmd_name}(*args, &block)\ncmd = \#{klass}.new(*args)\nrun_cmd(cmd, *args, &block)\nend\n" end |
Instance Method Details
- (Object) on_event
override
52 53 |
# File 'lib/fsr/listener/base.rb', line 52 def on_event end |
- (Object) post_init
36 37 38 |
# File 'lib/fsr/listener/base.rb', line 36 def post_init @api_queue = [] end |
- (Object) receive_request(header, content)
40 41 42 43 44 45 46 47 48 49 |
# File 'lib/fsr/listener/base.rb', line 40 def receive_request(header, content) @response = Response.new(header, content) if response.event? on_event find_and_invoke_event response.event elsif response.api_response? && @api_queue.any? invoke_api_queue end end |
- (Object) run_cmd(cmd, *args, &block)
28 29 30 31 |
# File 'lib/fsr/listener/base.rb', line 28 def run_cmd(cmd, *args, &block) send_data "#{cmd.raw}\n\n" @api_queue << [cmd, (block_given? ? block : lambda {})] end |