Class TableDataProtocol.RemoteClient
java.lang.Object
io.deephaven.enterprise.niowrapper.sched.NullIOHandler
io.deephaven.enterprise.comm.impl.nio.AbstractRemotePeer
io.deephaven.enterprise.comm.impl.nio.AbstractReadaheadRemotePeer
com.illumon.iris.db.v2.locations.protocol.TableDataProtocol.RemoteClient
- All Implemented Interfaces:
com.fishlib.base.log.LogOutputAppendable,TableDataProtocol.Client,AbstractPeer,IOHandler
- Enclosing class:
- TableDataProtocol
public static class TableDataProtocol.RemoteClient
extends AbstractReadaheadRemotePeer
implements TableDataProtocol.Client
-
Field Summary
Fields inherited from class io.deephaven.enterprise.comm.impl.nio.AbstractRemotePeer
clock, peerId -
Constructor Summary
ConstructorsConstructorDescriptionRemoteClient(int peerId, String name, IOJob job, com.fishlib.io.logger.Logger log, PooledMessage.Pool pool, com.fishlib.base.clock.Clock clock) -
Method Summary
Modifier and TypeMethodDescriptioncom.fishlib.base.log.LogOutputappend(@NotNull com.fishlib.base.log.LogOutput logOutput) protected voiddispatch(boolean bufferComplete) Dispatch the most-recently parsed message.voidEvery peer has to react to the loss of a connection.voidinitialize(@NotNull TableDataProtocol.RequestHandler requestHandler) protected voidparse(@NotNull WObjectReader reader) Parse an incoming message, and remember its contents for the next call to dispatch.voidsendColumnFileData(long requestKey, long startOffset, int length, @NotNull Message data) voidsendColumnFileSize(long requestKey, long columnFileSize) voidsendColumnLocationExistence(long requestKey, boolean exists, boolean littleEndianByteOrder, boolean symbolTableExists) voidsendRequestCompletion(long requestKey) voidsendRequestRejection(long requestKey, @NotNull TableDataProtocol.RequestRejectionType requestRejectionType, @NotNull CharSequence rejectText) voidsendTableLocationAdded(long requestKey, @NotNull TableLocationKey locationKey) voidsendTableLocationRemoved(long requestKey, @NotNull TableLocationKey locationKey) voidsendTableLocationUpdate(long requestKey, @NotNull TableLocationState locationState) toString()for loggingMethods inherited from class io.deephaven.enterprise.comm.impl.nio.AbstractReadaheadRemotePeer
getPeerId, handleIncomingMethods inherited from class io.deephaven.enterprise.comm.impl.nio.AbstractRemotePeer
addMessage, flush, flush, getByteCount, getJob, getLog, getOutput, getReader, getWriter, isShutdown, maybeFlush, maybeFlush, shutdownMethods inherited from class io.deephaven.enterprise.niowrapper.sched.NullIOHandler
handleEOF, handleError, handleOutgoing, handleTimeout, startJobMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface io.deephaven.enterprise.comm.impl.nio.AbstractPeer
flush, flush, getPeerId, isShutdown, maybeFlush, maybeFlush, shutdown
-
Constructor Details
-
RemoteClient
public RemoteClient(int peerId, String name, IOJob job, com.fishlib.io.logger.Logger log, PooledMessage.Pool pool, com.fishlib.base.clock.Clock clock)
-
-
Method Details
-
initialize
-
parse
Description copied from class:AbstractReadaheadRemotePeerParse an incoming message, and remember its contents for the next call to dispatch. The caller has checked that the reader has an entire message immediately available to it according to the message envelope, so any IOExceptions should not be handled.- Specified by:
parsein classAbstractReadaheadRemotePeer- Throws:
IOException
-
dispatch
protected void dispatch(boolean bufferComplete) Description copied from class:AbstractReadaheadRemotePeerDispatch the most-recently parsed message.- Specified by:
dispatchin classAbstractReadaheadRemotePeer
-
endJob
Description copied from class:AbstractRemotePeerEvery peer has to react to the loss of a connection. TODO: We are losing the Message cached in our MessageSequenceSink on disconnect. We need to tell the MessageSequenceSink to clean up (close() and finish() are already used for other things - perhaps shutDown()?)- Specified by:
endJobin interfaceIOHandler- Specified by:
endJobin classAbstractRemotePeer
-
sendRequestRejection
public void sendRequestRejection(long requestKey, @NotNull @NotNull TableDataProtocol.RequestRejectionType requestRejectionType, @NotNull @NotNull CharSequence rejectText) throws IOException - Specified by:
sendRequestRejectionin interfaceTableDataProtocol.Client- Throws:
IOException
-
sendRequestCompletion
- Specified by:
sendRequestCompletionin interfaceTableDataProtocol.Client- Throws:
IOException
-
sendTableLocationAdded
public void sendTableLocationAdded(long requestKey, @NotNull @NotNull TableLocationKey locationKey) throws IOException - Specified by:
sendTableLocationAddedin interfaceTableDataProtocol.Client- Throws:
IOException
-
sendTableLocationUpdate
public void sendTableLocationUpdate(long requestKey, @NotNull @NotNull TableLocationState locationState) throws IOException - Specified by:
sendTableLocationUpdatein interfaceTableDataProtocol.Client- Throws:
IOException
-
sendColumnLocationExistence
public void sendColumnLocationExistence(long requestKey, boolean exists, boolean littleEndianByteOrder, boolean symbolTableExists) throws IOException - Specified by:
sendColumnLocationExistencein interfaceTableDataProtocol.Client- Throws:
IOException
-
sendColumnFileSize
- Specified by:
sendColumnFileSizein interfaceTableDataProtocol.Client- Throws:
IOException
-
sendColumnFileData
public void sendColumnFileData(long requestKey, long startOffset, int length, @NotNull @NotNull Message data) throws IOException - Specified by:
sendColumnFileDatain interfaceTableDataProtocol.Client- Throws:
IOException
-
sendTableLocationRemoved
public void sendTableLocationRemoved(long requestKey, @NotNull @NotNull TableLocationKey locationKey) throws IOException - Specified by:
sendTableLocationRemovedin interfaceTableDataProtocol.Client- Throws:
IOException
-
toString
Description copied from class:AbstractRemotePeerfor logging- Overrides:
toStringin classAbstractRemotePeer
-
append
public com.fishlib.base.log.LogOutput append(@NotNull @NotNull com.fishlib.base.log.LogOutput logOutput) - Specified by:
appendin interfacecom.fishlib.base.log.LogOutputAppendable- Overrides:
appendin classAbstractRemotePeer
-