public class SpinningSocketWriter extends AbstractHandler implements SocketWriter
| Modifier and Type | Field and Description |
|---|---|
Queue<OutboundFrame> |
urgentWriteQueue |
Queue<OutboundFrame> |
writeQueue |
connection, connectionManager, ioService| Constructor and Description |
|---|
SpinningSocketWriter(TcpIpConnection connection,
MetricsRegistry metricsRegistry,
ILogger logger) |
| Modifier and Type | Method and Description |
|---|---|
long |
bytesPending() |
void |
close()
Closes this SocketWriter.
|
long |
getLastWriteTimeMillis()
Returns the last
Clock.currentTimeMillis() that a write to the socket completed. |
WriteHandler |
getWriteHandler()
Gets the
WriteHandler that belongs to this SocketWriter. |
long |
priorityBytesPending() |
void |
setProtocol(String protocol)
Sets the protocol this SocketWriter should use.
|
int |
totalFramesPending()
Returns the total number of packets (urgent and non normal priority) pending to be written to the socket.
|
void |
write() |
void |
write(OutboundFrame frame)
Offers a Frame to be written to the socket.
|
onFailurepublic final Queue<OutboundFrame> writeQueue
public final Queue<OutboundFrame> urgentWriteQueue
public SpinningSocketWriter(TcpIpConnection connection, MetricsRegistry metricsRegistry, ILogger logger)
public void write(OutboundFrame frame)
SocketWriterwrite in interface SocketWriterframe - the Frame to write.public long bytesPending()
public long priorityBytesPending()
public int totalFramesPending()
SocketWritertotalFramesPending in interface SocketWriterpublic long getLastWriteTimeMillis()
SocketWriterClock.currentTimeMillis() that a write to the socket completed.
Writing to the socket doesn't mean that data has been send or received; it means that data was written to the
SocketChannel. It could very well be that this data is stuck somewhere in an io-buffer.getLastWriteTimeMillis in interface SocketWriterpublic WriteHandler getWriteHandler()
SocketWriterWriteHandler that belongs to this SocketWriter.
This method exists for the TextReadHandler, but probably should be deleted.getWriteHandler in interface SocketWriterpublic void setProtocol(String protocol)
SocketWriterProtocolssetProtocol in interface SocketWriterprotocol - the protocolpublic void close()
SocketWriterTcpIpConnection.close(String, Throwable) method.close in interface SocketWriterCopyright © 2017 Hazelcast, Inc.. All Rights Reserved.