net.spy.memcached.protocol.binary
Class StatsOperationImpl

java.lang.Object
  extended by net.spy.memcached.compat.SpyObject
      extended by net.spy.memcached.protocol.BaseOperationImpl
          extended by net.spy.memcached.protocol.binary.StatsOperationImpl
All Implemented Interfaces:
Operation, StatsOperation

public class StatsOperationImpl
extends BaseOperationImpl
implements StatsOperation


Nested Class Summary
 
Nested classes/interfaces inherited from interface net.spy.memcached.ops.StatsOperation
StatsOperation.Callback
 
Field Summary
protected static byte[] EMPTY_BYTES
           
protected static int ERR_EINVAL
           
protected static int ERR_EXISTS
           
protected static int ERR_NOT_FOUND
          Error code for items that were not found.
protected static int ERR_NOT_STORED
           
protected  int errorCode
           
protected static OperationStatus EXISTS_STATUS
           
protected  int keyLen
           
protected static int MIN_RECV_PACKET
           
protected static OperationStatus NOT_FOUND_STATUS
           
protected static OperationStatus NOT_STORED_STATUS
           
protected  int opaque
           
protected static byte REQ_MAGIC
           
protected static byte RES_MAGIC
           
protected  long responseCas
           
protected  int responseCmd
           
protected  int responseOpaque
           
protected static OperationStatus STATUS_OK
           
 
Fields inherited from class net.spy.memcached.protocol.BaseOperationImpl
callback, CANCELLED
 
Constructor Summary
StatsOperationImpl(String arg, StatsOperation.Callback c)
           
 
Method Summary
protected  void decodePayload(byte[] pl)
          Decode the given payload for this command.
protected  void finishedPayload(byte[] pl)
           
protected  OperationStatus getStatusForErrorCode(int errCode, byte[] errPl)
          Get the OperationStatus object for the given error code.
 void initialize()
          Initialize this operation.
protected  boolean opaqueIsValid()
          Validate an opaque value from the header.
protected  void prepareBuffer(String key, long cas, byte[] val, Object... extraHeaders)
          Prepare a send buffer.
 void readFromBuffer(ByteBuffer b)
           
protected  void resetInput()
           
 
Methods inherited from class net.spy.memcached.protocol.BaseOperationImpl
cancel, getBuffer, getCallback, getException, getHandlingNode, getState, handleError, handleRead, hasErrored, isCancelled, setBuffer, setCallback, setHandlingNode, transitionState, wasCancelled, writeComplete
 
Methods inherited from class net.spy.memcached.compat.SpyObject
getLogger
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface net.spy.memcached.ops.Operation
cancel, getBuffer, getCallback, getException, getHandlingNode, getState, handleRead, hasErrored, isCancelled, readFromBuffer, setHandlingNode, writeComplete
 

Field Detail

REQ_MAGIC

protected static final byte REQ_MAGIC
See Also:
Constant Field Values

RES_MAGIC

protected static final byte RES_MAGIC
See Also:
Constant Field Values

MIN_RECV_PACKET

protected static final int MIN_RECV_PACKET
See Also:
Constant Field Values

ERR_NOT_FOUND

protected static final int ERR_NOT_FOUND
Error code for items that were not found.

See Also:
Constant Field Values

ERR_EXISTS

protected static final int ERR_EXISTS
See Also:
Constant Field Values

ERR_EINVAL

protected static final int ERR_EINVAL
See Also:
Constant Field Values

ERR_NOT_STORED

protected static final int ERR_NOT_STORED
See Also:
Constant Field Values

NOT_FOUND_STATUS

protected static final OperationStatus NOT_FOUND_STATUS

EXISTS_STATUS

protected static final OperationStatus EXISTS_STATUS

NOT_STORED_STATUS

protected static final OperationStatus NOT_STORED_STATUS

EMPTY_BYTES

protected static final byte[] EMPTY_BYTES

STATUS_OK

protected static final OperationStatus STATUS_OK

opaque

protected final int opaque

keyLen

protected int keyLen

responseCmd

protected int responseCmd

errorCode

protected int errorCode

responseOpaque

protected int responseOpaque

responseCas

protected long responseCas
Constructor Detail

StatsOperationImpl

public StatsOperationImpl(String arg,
                          StatsOperation.Callback c)
Method Detail

initialize

public void initialize()
Description copied from interface: Operation
Initialize this operation. This is used to prepare output byte buffers and stuff.

Specified by:
initialize in interface Operation
Specified by:
initialize in class BaseOperationImpl

finishedPayload

protected void finishedPayload(byte[] pl)
                        throws IOException
Throws:
IOException

resetInput

protected void resetInput()

readFromBuffer

public void readFromBuffer(ByteBuffer b)
                    throws IOException
Specified by:
readFromBuffer in class BaseOperationImpl
Throws:
IOException

getStatusForErrorCode

protected OperationStatus getStatusForErrorCode(int errCode,
                                                byte[] errPl)
Get the OperationStatus object for the given error code.

Parameters:
errCode - the error code
Returns:
the status to return, or null if this is an exceptional case

decodePayload

protected void decodePayload(byte[] pl)
Decode the given payload for this command.

Parameters:
pl - the payload.

opaqueIsValid

protected boolean opaqueIsValid()
Validate an opaque value from the header. This may be overridden from a subclass where the opaque isn't expected to always be the same as the request opaque.


prepareBuffer

protected void prepareBuffer(String key,
                             long cas,
                             byte[] val,
                             Object... extraHeaders)
Prepare a send buffer.

Parameters:
key - the key (for keyed ops)
cas - the cas value
val - the data payload
extraHeaders - any additional headers that need to be sent