Class: AgentClientProtocol::Transport::NdjsonWriter
- Inherits:
-
Object
- Object
- AgentClientProtocol::Transport::NdjsonWriter
- Defined in:
- lib/agent_client_protocol/transport.rb
Instance Method Summary collapse
- #close ⇒ Object
-
#initialize(io) ⇒ NdjsonWriter
constructor
A new instance of NdjsonWriter.
- #write(message) ⇒ Object
Constructor Details
#initialize(io) ⇒ NdjsonWriter
Returns a new instance of NdjsonWriter.
10 11 12 13 14 |
# File 'lib/agent_client_protocol/transport.rb', line 10 def initialize(io) @io = io @io.sync = true @mutex = Mutex.new end |
Instance Method Details
#close ⇒ Object
24 25 26 27 28 |
# File 'lib/agent_client_protocol/transport.rb', line 24 def close @io.close unless @io.closed? rescue IOError # already closed end |
#write(message) ⇒ Object
16 17 18 19 20 21 22 |
# File 'lib/agent_client_protocol/transport.rb', line 16 def write() line = JSON.generate() + "\n" @mutex.synchronize do @io.write(line) @io.flush end end |