Class TapOperationImpl
java.lang.Object
net.spy.memcached.compat.SpyObject
net.spy.memcached.protocol.BaseOperationImpl
net.spy.memcached.protocol.binary.OperationImpl
net.spy.memcached.protocol.binary.TapOperationImpl
- All Implemented Interfaces:
Operation
,TapOperation
- Direct Known Subclasses:
TapAckOperationImpl
,TapBackfillOperationImpl
,TapCustomOperationImpl
,TapDumpOperationImpl
Abstract implementation of a tap operation.
-
Nested Class Summary
Nested classes/interfaces inherited from interface net.spy.memcached.ops.TapOperation
TapOperation.Callback
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate int
private int
(package private) static final byte
private byte[]
private byte[]
Fields inherited from class net.spy.memcached.protocol.binary.OperationImpl
DUMMY_OPCODE, EMPTY_BYTES, ERR_2BIG, ERR_BUSY, ERR_DELTA_BADVAL, ERR_EXISTS, ERR_INTERNAL, ERR_INVAL, ERR_NO_MEM, ERR_NOT_FOUND, ERR_NOT_MY_VBUCKET, ERR_NOT_STORED, ERR_NOT_SUPPORTED, ERR_TEMP_FAIL, ERR_UNKNOWN_COMMAND, errorCode, keyLen, MIN_RECV_PACKET, opaque, REQ_MAGIC, RES_MAGIC, responseCas, responseCmd, responseOpaque, STATUS_OK, SUCCESS, vbucket
Fields inherited from class net.spy.memcached.protocol.BaseOperationImpl
callback, CANCELLED, notMyVbucketNodes, TIMED_OUT
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract void
Initialize this operation.void
readFromBuffer
(ByteBuffer data) Read from the incomingByteBuffer
.Methods inherited from class net.spy.memcached.protocol.binary.OperationImpl
decodeByte, decodeInt, decodeLong, decodePayload, decodeShort, decodeUnsignedInt, finishedPayload, generateOpaque, getErrorMsg, getStatusForErrorCode, opaqueIsValid, prepareBuffer, resetInput, toString
Methods inherited from class net.spy.memcached.protocol.BaseOperationImpl
addClone, cancel, getBuffer, getCallback, getCloneCount, getException, getHandlingNode, getState, getWriteCompleteTimestamp, handleError, handleRead, hasErrored, isCancelled, isTimedOut, isTimedOut, isTimedOutUnsent, setBuffer, setCallback, setCloneCount, setHandlingNode, timeOut, transitionState, wasCancelled, writeComplete, writing
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface net.spy.memcached.ops.Operation
addClone, cancel, getBuffer, getCallback, getCloneCount, getErrorMsg, getException, getHandlingNode, getState, getWriteCompleteTimestamp, handleRead, hasErrored, isCancelled, isTimedOut, isTimedOut, isTimedOutUnsent, setCloneCount, setHandlingNode, timeOut, writeComplete, writing
Methods inherited from interface net.spy.memcached.ops.TapOperation
streamClosed
-
Field Details
-
bytesProcessed
private int bytesProcessed -
bodylen
private int bodylen -
header
private byte[] header -
message
private byte[] message -
CMD
static final byte CMD- See Also:
-
-
Constructor Details
-
TapOperationImpl
-
-
Method Details
-
initialize
public abstract void initialize()Description copied from interface:Operation
Initialize this operation. This is used to prepare output byte buffers and stuff.- Specified by:
initialize
in interfaceOperation
- Specified by:
initialize
in classBaseOperationImpl
-
readFromBuffer
Description copied from class:OperationImpl
Read from the incomingByteBuffer
. Reading from the buffer is done in stages, depending on how much data can be read at once. First, the header is read and then parsed (24 bytes, indicated byOperationImpl.MIN_RECV_PACKET
). Then, the payload is read (if one is available for this operation and can be loaded fully).- Specified by:
readFromBuffer
in interfaceOperation
- Overrides:
readFromBuffer
in classOperationImpl
- Parameters:
data
- the buffer to read from.- Throws:
IOException
- if an error happened during parsing/reading.
-