Class BinaryGetMultiCommand
java.lang.Object
net.rubyeye.xmemcached.command.Command
net.rubyeye.xmemcached.command.binary.BaseBinaryCommand
net.rubyeye.xmemcached.command.binary.BinaryGetMultiCommand
- All Implemented Interfaces:
WriteMessage
,MapReturnValueAware
,MergeCommandsAware
,StoreCommand
public class BinaryGetMultiCommand
extends BaseBinaryCommand
implements MergeCommandsAware, MapReturnValueAware
A command for holding getkq commands
-
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
ConstructorsConstructorDescriptionBinaryGetMultiCommand
(String key, CommandType cmdType, CountDownLatch latch) -
Method Summary
Modifier and TypeMethodDescriptionvoid
encode()
protected boolean
finish()
protected long
readCAS
(ByteBuffer buffer) protected boolean
readExtras
(ByteBuffer buffer, int extrasLength) protected void
readHeader
(ByteBuffer buffer) optimistic,if response status is greater than zero,then skip buffer to next response,set result as nullprotected boolean
readKey
(ByteBuffer buffer, int keyLength) protected boolean
readOpCode
(ByteBuffer buffer) protected boolean
readValue
(ByteBuffer buffer, int bodyLength, int keyLength, int extrasLength) void
setMergeCommands
(Map<Object, Command> mergeCommands) Methods inherited from class net.rubyeye.xmemcached.command.binary.BaseBinaryCommand
decode, fillExtras, fillKey, fillValue, getCas, getCasValue, getExpTime, getExtrasLength, getKeyLength, getOpaque, getOpCode, getResponseStatus, getTranscoder, getValue, getValueLength, readOpaque, 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
-
finished
private boolean finished -
responseKey
-
responseCAS
private long responseCAS -
responseFlag
private int responseFlag -
mergeCommands
-
-
Constructor Details
-
BinaryGetMultiCommand
-
-
Method Details
-
getReturnValues
- Specified by:
getReturnValues
in interfaceMapReturnValueAware
-
readOpCode
- Overrides:
readOpCode
in classBaseBinaryCommand
-
readHeader
optimistic,if response status is greater than zero,then skip buffer to next response,set result as null- Overrides:
readHeader
in classBaseBinaryCommand
-
encode
public void encode()- Overrides:
encode
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
-
readCAS
- Overrides:
readCAS
in classBaseBinaryCommand
-
getMergeCommands
- Specified by:
getMergeCommands
in interfaceMergeCommandsAware
-
setMergeCommands
- Specified by:
setMergeCommands
in interfaceMergeCommandsAware
-