org.jboss.cache.commands.write
Class PutKeyValueCommand

java.lang.Object
  extended by org.jboss.cache.commands.read.AbstractDataCommand
      extended by org.jboss.cache.commands.write.AbstractVersionedDataCommand
          extended by org.jboss.cache.commands.write.PutKeyValueCommand
All Implemented Interfaces:
Cloneable, DataCommand, ReplicableCommand, ReversibleCommand, VersionedDataCommand, VisitableCommand
Direct Known Subclasses:
PutForExternalReadCommand

public class PutKeyValueCommand
extends AbstractVersionedDataCommand

Implements functionality defined by Cache.put(org.jboss.cache.Fqn, Object, Object).

Since:
2.2
Author:
Mircea.Markus@jboss.com

Field Summary
protected  Object key
           
static int METHOD_ID
           
protected  Object oldValue
           
protected  Object value
           
static int VERSIONED_METHOD_ID
           
 
Fields inherited from class org.jboss.cache.commands.write.AbstractVersionedDataCommand
dataVersion, globalTransaction, notifier
 
Fields inherited from class org.jboss.cache.commands.read.AbstractDataCommand
dataContainer, fqn
 
Constructor Summary
PutKeyValueCommand()
           
PutKeyValueCommand(GlobalTransaction gtx, Fqn fqn, Object key, Object value)
           
 
Method Summary
 Object acceptVisitor(InvocationContext ctx, Visitor visitor)
          Accept a visitor, and return the result of accepting this visitor.
 boolean equals(Object o)
           
 int getCommandId()
          Used by marshallers to convert this command into an id for streaming.
 Object getKey()
           
 Object[] getParameters()
          Basic versions of these methods
 Object getValue()
           
 int hashCode()
           
protected  boolean isVersionedId(int commandId)
           
 Object perform(InvocationContext ctx)
          Puts the specified key and value into the data map in the node referenced by the specified Fqn.
 void rollback()
          Reverses a command that has already been invoked.
 void setKey(Object key)
           
 void setParameters(int commandId, Object[] args)
          Basic versions of these methods
 void setValue(Object value)
           
 String toString()
           
 
Methods inherited from class org.jboss.cache.commands.write.AbstractVersionedDataCommand
getDataVersion, getGlobalTransaction, initialize, isVersioned, setDataVersion, setGlobalTransaction
 
Methods inherited from class org.jboss.cache.commands.read.AbstractDataCommand
getFqn, initialize
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.jboss.cache.commands.DataCommand
getFqn
 

Field Detail

METHOD_ID

public static final int METHOD_ID
See Also:
Constant Field Values

VERSIONED_METHOD_ID

public static final int VERSIONED_METHOD_ID
See Also:
Constant Field Values

key

protected Object key

value

protected Object value

oldValue

protected Object oldValue
Constructor Detail

PutKeyValueCommand

public PutKeyValueCommand(GlobalTransaction gtx,
                          Fqn fqn,
                          Object key,
                          Object value)

PutKeyValueCommand

public PutKeyValueCommand()
Method Detail

perform

public Object perform(InvocationContext ctx)
Puts the specified key and value into the data map in the node referenced by the specified Fqn.

Parameters:
ctx - invocation context
Returns:
the value being overwritten, if any, otherwise a null.

rollback

public void rollback()
Description copied from interface: ReversibleCommand
Reverses a command that has already been invoked. Important: this method will be invoked at the end of interceptors chain. It should never be called directly from a custom interceptor.


acceptVisitor

public Object acceptVisitor(InvocationContext ctx,
                            Visitor visitor)
                     throws Throwable
Description copied from interface: VisitableCommand
Accept a visitor, and return the result of accepting this visitor.

Parameters:
ctx - invocation context
visitor - visitor to accept
Returns:
arbitrary return value
Throws:
Throwable - in the event of problems

getKey

public Object getKey()

getValue

public Object getValue()

setKey

public void setKey(Object key)

setValue

public void setValue(Object value)

getCommandId

public int getCommandId()
Description copied from interface: ReplicableCommand
Used by marshallers to convert this command into an id for streaming.

Returns:
the method id of this command. This is compatible with pre-2.2.0 MethodCall ids.

getParameters

public Object[] getParameters()
Description copied from class: AbstractDataCommand
Basic versions of these methods

Specified by:
getParameters in interface ReplicableCommand
Overrides:
getParameters in class AbstractVersionedDataCommand
Returns:
an object array of arguments, compatible with pre-2.2.0 MethodCall args.

setParameters

public void setParameters(int commandId,
                          Object[] args)
Description copied from class: AbstractDataCommand
Basic versions of these methods

Specified by:
setParameters in interface ReplicableCommand
Overrides:
setParameters in class AbstractVersionedDataCommand
Parameters:
commandId - command id to set. This is usually unused but *could* be used in the event of a command having multiple IDs, such as PutKeyValueCommand.
args - object array of args

equals

public boolean equals(Object o)
Overrides:
equals in class AbstractVersionedDataCommand

hashCode

public int hashCode()
Overrides:
hashCode in class AbstractVersionedDataCommand

isVersionedId

protected boolean isVersionedId(int commandId)
Specified by:
isVersionedId in class AbstractVersionedDataCommand

toString

public String toString()
Overrides:
toString in class AbstractDataCommand


Copyright © 2009 JBoss, a division of Red Hat. All Rights Reserved.