Class: Megatest::MultiProcess::MessageSocket
- Inherits:
-
Object
- Object
- Megatest::MultiProcess::MessageSocket
- Defined in:
- lib/megatest/multi_process.rb
Instance Method Summary collapse
- #<<(message) ⇒ Object
- #close ⇒ Object
- #closed? ⇒ Boolean
-
#initialize(socket) ⇒ MessageSocket
constructor
A new instance of MessageSocket.
- #read ⇒ Object
- #to_io ⇒ Object
Constructor Details
#initialize(socket) ⇒ MessageSocket
Returns a new instance of MessageSocket.
23 24 25 |
# File 'lib/megatest/multi_process.rb', line 23 def initialize(socket) @socket = socket end |
Instance Method Details
#<<(message) ⇒ Object
27 28 29 30 31 32 33 34 |
# File 'lib/megatest/multi_process.rb', line 27 def <<() begin @socket.write(Marshal.dump()) rescue Errno::EPIPE, Errno::ENOTCONN return nil # Other side was closed end self end |
#close ⇒ Object
46 47 48 |
# File 'lib/megatest/multi_process.rb', line 46 def close @socket.close end |
#closed? ⇒ Boolean
42 43 44 |
# File 'lib/megatest/multi_process.rb', line 42 def closed? @socket.closed? end |
#read ⇒ Object
36 37 38 39 40 |
# File 'lib/megatest/multi_process.rb', line 36 def read Marshal.load(@socket) rescue EOFError, Errno::ECONNRESET nil # Other side was closed end |
#to_io ⇒ Object
50 51 52 |
# File 'lib/megatest/multi_process.rb', line 50 def to_io @socket end |