|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.infinispan.interceptors.InterceptorChain
public class InterceptorChain
Knows how to build and manage an chain of interceptors. Also in charge with invoking methods on the chain.
Constructor Summary | |
---|---|
InterceptorChain(CommandInterceptor first)
Constructs an interceptor chain having the supplied interceptor as first. |
Method Summary | |
---|---|
void |
addInterceptor(CommandInterceptor interceptor,
int position)
Inserts the given interceptor at the specified position in the chain (o based indexing). |
boolean |
addInterceptorAfter(CommandInterceptor toAdd,
Class<? extends CommandInterceptor> afterInterceptor)
Adds a new interceptor in list after an interceptor of a given type. |
boolean |
addInterceptorBefore(CommandInterceptor toAdd,
Class<? extends CommandInterceptor> beforeInterceptor)
Adds a new interceptor in list after an interceptor of a given type. |
void |
appendInterceptor(CommandInterceptor ci,
boolean isCustom)
Appends at the end. |
List<CommandInterceptor> |
asList()
Returns an unmofiable list with all the interceptors in sequence. |
boolean |
containsInstance(CommandInterceptor interceptor)
Checks whether the chain contains the supplied interceptor instance. |
boolean |
containsInterceptorType(Class<? extends CommandInterceptor> interceptorType)
|
CommandInterceptor |
getFirstInChain()
|
List<CommandInterceptor> |
getInterceptorsWhichExtend(Class<? extends CommandInterceptor> interceptorClass)
Returns all interceptors which extend the given command interceptor. |
List<CommandInterceptor> |
getInterceptorsWithClassName(String name)
Returns all the interceptors that have the fully qualified name of their class equal with the supplied class name. |
Object |
invoke(InvocationContext ctx,
VisitableCommand command)
Walks the command through the interceptor chain. |
protected boolean |
isFirstInChain(Class<? extends CommandInterceptor> clazz)
|
void |
removeInterceptor(Class<? extends CommandInterceptor> clazz)
Removes all the occurences of supplied interceptor type from the chain. |
void |
removeInterceptor(int position)
Removes the interceptor at the given postion. |
boolean |
replaceInterceptor(CommandInterceptor replacingInterceptor,
Class<? extends CommandInterceptor> toBeReplacedInterceptorType)
Replaces an existing interceptor of the given type in the interceptor chain with a new interceptor instance passed as parameter. |
void |
setFirstInChain(CommandInterceptor interceptor)
Mainly used by unit tests to replace the interceptor chain with the starting point passed in. |
int |
size()
Returns the number of interceptors in the chain. |
String |
toString()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public InterceptorChain(CommandInterceptor first)
Method Detail |
---|
public void addInterceptor(CommandInterceptor interceptor, int position)
IllegalArgumentException
- if the position is invalid (e.g. 5 and there are only 2 interceptors in the
chain)public void removeInterceptor(int position)
IllegalArgumentException
- if the position is invalid (e.g. 5 and there are only 2 interceptors in the
chain)public int size()
public List<CommandInterceptor> asList()
public void removeInterceptor(Class<? extends CommandInterceptor> clazz)
protected boolean isFirstInChain(Class<? extends CommandInterceptor> clazz)
public boolean addInterceptorAfter(CommandInterceptor toAdd, Class<? extends CommandInterceptor> afterInterceptor)
public boolean addInterceptorBefore(CommandInterceptor toAdd, Class<? extends CommandInterceptor> beforeInterceptor)
public boolean replaceInterceptor(CommandInterceptor replacingInterceptor, Class<? extends CommandInterceptor> toBeReplacedInterceptorType)
replacingInterceptor
- the interceptor to add to the interceptor chaintoBeReplacedInterceptorType
- the type of interceptor that should be swapped with the new one
public void appendInterceptor(CommandInterceptor ci, boolean isCustom)
public Object invoke(InvocationContext ctx, VisitableCommand command)
public CommandInterceptor getFirstInChain()
public void setFirstInChain(CommandInterceptor interceptor)
interceptor
- interceptor to be used as the first interceptor in the chain.public List<CommandInterceptor> getInterceptorsWhichExtend(Class<? extends CommandInterceptor> interceptorClass)
public List<CommandInterceptor> getInterceptorsWithClassName(String name)
public String toString()
toString
in class Object
public boolean containsInstance(CommandInterceptor interceptor)
public boolean containsInterceptorType(Class<? extends CommandInterceptor> interceptorType)
|
--> | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |