org.infinispan.commands.remote
Class ClusteredGetCommand

java.lang.Object
  extended by org.infinispan.commands.remote.BaseRpcCommand
      extended by org.infinispan.commands.remote.ClusteredGetCommand
All Implemented Interfaces:
FlagAffectedCommand, CacheRpcCommand, ReplicableCommand

public class ClusteredGetCommand
extends BaseRpcCommand
implements FlagAffectedCommand

Issues a remote get call. This is not a VisitableCommand and hence not passed up the CommandInterceptor chain.

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

Field Summary
static byte COMMAND_ID
           
 
Fields inherited from class org.infinispan.commands.remote.BaseRpcCommand
cacheName
 
Constructor Summary
ClusteredGetCommand(Object key, String cacheName)
           
ClusteredGetCommand(Object key, String cacheName, Set<Flag> flags, boolean acquireRemoteLock, GlobalTransaction gtx)
           
ClusteredGetCommand(String cacheName)
           
ClusteredGetCommand(String key, String cacheName, Set<Flag> flags)
           
 
Method Summary
 boolean equals(Object o)
           
 byte getCommandId()
          Used by marshallers to convert this command into an id for streaming.
 Set<Flag> getFlags()
           
 Object getKey()
           
 Object[] getParameters()
          Used by marshallers to stream this command across a network
 boolean hasFlag(Flag flag)
          Check whether a particular flag is present in the command
 int hashCode()
           
 void initialize(InvocationContextContainer icc, CommandsFactory commandsFactory, InternalEntryFactory entryFactory, InterceptorChain interceptorChain, DistributionManager distributionManager, TransactionTable txTable)
           
 boolean isReturnValueExpected()
          If true, a return value will be provided when performed remotely.
 InternalCacheValue perform(InvocationContext context)
          Invokes a logical "get(key)" on a remote cache and returns results.
 void setFlags(Set<Flag> flags)
          Use it to store the flags from the InvocationContext into the Command before remoting the Command.
 void setParameters(int commandId, Object[] args)
          Used by the CommandsFactory to create a command from raw data read off a stream.
 String toString()
           
 
Methods inherited from class org.infinispan.commands.remote.BaseRpcCommand
getCacheName, getOrigin, setOrigin
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

COMMAND_ID

public static final byte COMMAND_ID
See Also:
Constant Field Values
Constructor Detail

ClusteredGetCommand

public ClusteredGetCommand(String cacheName)

ClusteredGetCommand

public ClusteredGetCommand(Object key,
                           String cacheName,
                           Set<Flag> flags,
                           boolean acquireRemoteLock,
                           GlobalTransaction gtx)

ClusteredGetCommand

public ClusteredGetCommand(Object key,
                           String cacheName)

ClusteredGetCommand

public ClusteredGetCommand(String key,
                           String cacheName,
                           Set<Flag> flags)
Method Detail

initialize

public void initialize(InvocationContextContainer icc,
                       CommandsFactory commandsFactory,
                       InternalEntryFactory entryFactory,
                       InterceptorChain interceptorChain,
                       DistributionManager distributionManager,
                       TransactionTable txTable)

perform

public InternalCacheValue perform(InvocationContext context)
                           throws Throwable
Invokes a logical "get(key)" on a remote cache and returns results.

Specified by:
perform in interface ReplicableCommand
Parameters:
context - invocation context, ignored.
Returns:
returns an CacheEntry or null, if no entry is found.
Throws:
Throwable - in the event of problems.

getCommandId

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

Specified by:
getCommandId in interface ReplicableCommand
Returns:
the method id of this command. This is compatible with pre-2.2.0 MethodCall ids.

getParameters

public Object[] getParameters()
Description copied from interface: ReplicableCommand
Used by marshallers to stream this command across a network

Specified by:
getParameters in interface ReplicableCommand
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 interface: ReplicableCommand
Used by the CommandsFactory to create a command from raw data read off a stream.

Specified by:
setParameters in interface ReplicableCommand
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 Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

toString

public String toString()
Overrides:
toString in class BaseRpcCommand

getKey

public Object getKey()

getFlags

public Set<Flag> getFlags()
Specified by:
getFlags in interface FlagAffectedCommand
Returns:
the Flags which where set in the context - only valid to invoke after FlagAffectedCommand.setFlags(Set)

setFlags

public void setFlags(Set<Flag> flags)
Description copied from interface: FlagAffectedCommand
Use it to store the flags from the InvocationContext into the Command before remoting the Command.

Specified by:
setFlags in interface FlagAffectedCommand

hasFlag

public boolean hasFlag(Flag flag)
Description copied from interface: FlagAffectedCommand
Check whether a particular flag is present in the command

Specified by:
hasFlag in interface FlagAffectedCommand
Parameters:
flag - to lookup in the command
Returns:
true if the flag is present

isReturnValueExpected

public boolean isReturnValueExpected()
Description copied from interface: ReplicableCommand
If true, a return value will be provided when performed remotely. Otherwise, a remote ResponseGenerator may choose to simply return null to save on marshalling costs.

Specified by:
isReturnValueExpected in interface ReplicableCommand
Returns:
true or false

-->

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