public class TracingPacketSender extends java.lang.Object implements MessageSender<NativePacketPayload>
MessageSender which traces all sent packets to the provided logger.| Modifier and Type | Field and Description |
|---|---|
private java.lang.String |
host |
private Log |
log |
private MessageSender<NativePacketPayload> |
packetSender |
private long |
serverThreadId |
| Constructor and Description |
|---|
TracingPacketSender(MessageSender<NativePacketPayload> packetSender,
Log log,
java.lang.String host,
long serverThreadId) |
| Modifier and Type | Method and Description |
|---|---|
private void |
logPacket(byte[] packet,
int packetLen,
byte packetSequence)
Log the packet details to the provided logger.
|
void |
send(byte[] packet,
int packetLen,
byte packetSequence)
Synchronously send the message to server.
|
void |
setServerThreadId(long serverThreadId) |
MessageSender<NativePacketPayload> |
undecorate()
Return the previous PacketSender instance from the decorators chain or the current PacketSender
if it is the first entry in a chain.
|
MessageSender<NativePacketPayload> |
undecorateAll()
Return a PacketSender instance free of decorators.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitsend, send, setMaxAllowedPacketprivate MessageSender<NativePacketPayload> packetSender
private java.lang.String host
private long serverThreadId
private Log log
public TracingPacketSender(MessageSender<NativePacketPayload> packetSender, Log log, java.lang.String host, long serverThreadId)
public void setServerThreadId(long serverThreadId)
private void logPacket(byte[] packet,
int packetLen,
byte packetSequence)
packet - packet as bytespacketLen - packet lengthpacketSequence - sequence indexpublic void send(byte[] packet,
int packetLen,
byte packetSequence)
throws java.io.IOException
MessageSendersend in interface MessageSender<NativePacketPayload>packet - byte array containing a messagepacketLen - length of the messagepacketSequence - message sequence index (used in a native protocol)java.io.IOException - if an error occurspublic MessageSender<NativePacketPayload> undecorateAll()
MessageSenderundecorateAll in interface MessageSender<NativePacketPayload>MessageSender instancepublic MessageSender<NativePacketPayload> undecorate()
MessageSenderundecorate in interface MessageSender<NativePacketPayload>MessageSender instance