Class BinaryGetCommand
java.lang.Object
net.rubyeye.xmemcached.command.Command
net.rubyeye.xmemcached.command.binary.BaseBinaryCommand
net.rubyeye.xmemcached.command.binary.BinaryGetCommand
- All Implemented Interfaces:
WriteMessage
,AssocCommandAware
,StoreCommand
- Direct Known Subclasses:
BinaryGetAndTouchCommand
Implements get/getq,getk/getkq protocol
-
Field Summary
FieldsFields inherited from class net.rubyeye.xmemcached.command.binary.BaseBinaryCommand
cas, decodeStatus, DEFAULT_VBUCKET_ID, expTime, EXTRAS_LENGTH, opaque, opCode, responseExtrasLength, responseKeyLength, responseStatus, responseTotalBodyLength, value, vbucketId
Fields inherited from class net.rubyeye.xmemcached.command.Command
cancel, commandType, exception, ioBuffer, key, keyBytes, latch, mergeCount, noreply, REQUEST_MAGIC_NUMBER, RESPONSE_MAGIC_NUMBER, result, status, transcoder, writeFuture
-
Constructor Summary
ConstructorsConstructorDescriptionBinaryGetCommand
(String key, byte[] keyBytes, CommandType cmdType, CountDownLatch latch, OpCode opCode, boolean noreply) -
Method Summary
Modifier and TypeMethodDescriptionprotected void
fillExtras
(CachedData data) protected void
fillValue
(CachedData data) protected boolean
finish()
protected byte
final String
protected int
getValueLength
(CachedData data) protected long
readCAS
(ByteBuffer buffer) protected boolean
readExtras
(ByteBuffer buffer, int extrasLength) protected void
readHeader
(ByteBuffer buffer) Optimistic,if the value length is 0,then skip remaining buffer,set result as nullprotected boolean
readKey
(ByteBuffer buffer, int keyLength) protected boolean
readValue
(ByteBuffer buffer, int bodyLength, int keyLength, int extrasLength) final void
setAssocCommands
(List<Command> assocCommands) final void
setResponseKey
(String responseKey) Methods inherited from class net.rubyeye.xmemcached.command.binary.BaseBinaryCommand
decode, encode, fillKey, getCas, getCasValue, getExpTime, getKeyLength, getOpaque, getOpCode, getResponseStatus, getTranscoder, getValue, readOpaque, readOpCode, readStatus, setCas, setExpTime, setOpaque, setOpCode, setResponseStatus, setTranscoder, setValue
Methods inherited from class net.rubyeye.xmemcached.command.Command
cancel, countDownLatch, decodeError, decodeError, decodeError, decodeError, getCommandType, getCopiedMergeCount, getException, getIoBuffer, getKey, getKeyBytes, getLatch, getMergeCount, getMessage, getResult, getStatus, getWriteBuffer, getWriteFuture, isAdded, isCancel, isNoreply, isWriting, setAdded, setCommandType, setException, setIoBuffer, setKey, setKeyBytes, setLatch, setMergeCount, setNoreply, setResult, setStatus, setWriteBuffer, setWriteFuture, toString, writing
-
Field Details
-
responseKey
-
responseValue
-
assocCommands
-
-
Constructor Details
-
BinaryGetCommand
public BinaryGetCommand(String key, byte[] keyBytes, CommandType cmdType, CountDownLatch latch, OpCode opCode, boolean noreply)
-
-
Method Details
-
getResponseKey
-
setResponseKey
-
getAssocCommands
- Specified by:
getAssocCommands
in interfaceAssocCommandAware
-
setAssocCommands
- Specified by:
setAssocCommands
in interfaceAssocCommandAware
-
readHeader
Optimistic,if the value length is 0,then skip remaining buffer,set result as null- Overrides:
readHeader
in classBaseBinaryCommand
-
finish
protected boolean finish()- Overrides:
finish
in classBaseBinaryCommand
-
readKey
- Overrides:
readKey
in classBaseBinaryCommand
-
readValue
- Overrides:
readValue
in classBaseBinaryCommand
-
readExtras
- Overrides:
readExtras
in classBaseBinaryCommand
-
fillExtras
- Overrides:
fillExtras
in classBaseBinaryCommand
-
fillValue
- Overrides:
fillValue
in classBaseBinaryCommand
-
getExtrasLength
protected byte getExtrasLength()- Overrides:
getExtrasLength
in classBaseBinaryCommand
-
getValueLength
- Overrides:
getValueLength
in classBaseBinaryCommand
-
readCAS
- Overrides:
readCAS
in classBaseBinaryCommand
-