Infinispan Distribution 5.2.6.Final-redhat-2

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, TopologyAffectedCommand, VisitableCommand

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
 Object acceptVisitor(InvocationContext ctx, Visitor visitor)
          Accept a visitor, and return the result of accepting this visitor.
 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
 int getTopologyId()
           
 boolean hasFlag(Flag flag)
          Check whether a particular flag is present in the command
 int hashCode()
           
 boolean ignoreCommandOnStatus(ComponentStatus status)
          Similar to VisitableCommand.shouldInvoke(InvocationContext) but evaluated by InvocationContextInterceptor.
 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(Flag... flags)
          Use it to store the flags from the InvocationContext into the Command before remoting the Command.
 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.
 void setTopologyId(int topologyId)
           
 boolean shouldInvoke(InvocationContext ctx)
          Used by the InboundInvocationHandler to determine whether the command should be invoked or not.
 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

setFlags

public void setFlags(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

getTopologyId

public int getTopologyId()
Specified by:
getTopologyId in interface TopologyAffectedCommand

setTopologyId

public void setTopologyId(int topologyId)
Specified by:
setTopologyId in interface TopologyAffectedCommand

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.

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

shouldInvoke

public boolean shouldInvoke(InvocationContext ctx)
Description copied from interface: VisitableCommand
Used by the InboundInvocationHandler to determine whether the command should be invoked or not.

Specified by:
shouldInvoke in interface VisitableCommand
Returns:
true if the command should be invoked, false otherwise.

ignoreCommandOnStatus

public boolean ignoreCommandOnStatus(ComponentStatus status)
Description copied from interface: VisitableCommand
Similar to VisitableCommand.shouldInvoke(InvocationContext) but evaluated by InvocationContextInterceptor. Commands can opt to be discarded in case the cache status is not suited (as InvalidateCommand)

Specified by:
ignoreCommandOnStatus in interface VisitableCommand
Returns:
true if the command should NOT be invoked.

Infinispan Distribution 5.2.6.Final-redhat-2

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