Module: EventMachine::Protocols::ObjectProtocol
- Defined in:
- lib/em/protocols/object_protocol.rb
Overview
ObjectProtocol allows for easy communication using marshaled ruby objects
module RubyServer include EM::P::ObjectProtocol
def receive_object obj send_object(said' => obj) end end
Instance Method Summary collapse
-
#receive_object(obj) ⇒ Object
Invoked with ruby objects received over the network.
-
#send_object(obj) ⇒ Object
Sends a ruby object over the network.
-
#serializer ⇒ Object
By default returns Marshal, override to return JSON or YAML, or any other serializer/deserializer responding to #dump and #load.
Instance Method Details
#receive_object(obj) ⇒ Object
Invoked with ruby objects received over the network
35 36 37 |
# File 'lib/em/protocols/object_protocol.rb', line 35 def receive_object obj # stub end |
#send_object(obj) ⇒ Object
Sends a ruby object over the network
40 41 42 43 |
# File 'lib/em/protocols/object_protocol.rb', line 40 def send_object obj data = serializer.dump(obj) send_data [data.respond_to?(:bytesize) ? data.bytesize : data.size, data].pack('Na*') end |
#serializer ⇒ Object
By default returns Marshal, override to return JSON or YAML, or any other serializer/deserializer responding to #dump and #load.
16 17 18 |
# File 'lib/em/protocols/object_protocol.rb', line 16 def serializer Marshal end |