Class: Tamashii::Agent::Networking::RequestObserver
- Inherits:
-
Object
- Object
- Tamashii::Agent::Networking::RequestObserver
- Includes:
- Common::Loggable
- Defined in:
- lib/tamashii/agent/networking/request_observer.rb
Instance Method Summary collapse
-
#initialize(networking, id, ev_type, ev_body, future) ⇒ RequestObserver
constructor
A new instance of RequestObserver.
- #update(time, ev_data, reason) ⇒ Object
Methods included from Common::Loggable
#display_name, #logger, #progname
Constructor Details
#initialize(networking, id, ev_type, ev_body, future) ⇒ RequestObserver
Returns a new instance of RequestObserver.
9 10 11 12 13 14 15 |
# File 'lib/tamashii/agent/networking/request_observer.rb', line 9 def initialize(networking, id, ev_type, ev_body, future) @networking = networking @id = id @ev_type = ev_type @ev_body = ev_body @future = future end |
Instance Method Details
#update(time, ev_data, reason) ⇒ Object
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/tamashii/agent/networking/request_observer.rb', line 17 def update(time, ev_data, reason) if @future.fulfilled? res_ev_type = ev_data[:ev_type] res_ev_body = ev_data[:ev_body] case res_ev_type when Type::RFID_RESPONSE_JSON logger.debug "Handled: #{res_ev_type}: #{res_ev_body}" @networking.handle_card_result(JSON.parse(res_ev_body)) else logger.warn "Unhandled packet result: #{res_ev_type}: #{res_ev_body}" end else logger.error "#{@id} Failed with #{reason}" @networking.on_request_timeout(@ev_type, @ev_body) end end |