public static enum Advice.Dispatcher.Inactive extends Enum<Advice.Dispatcher.Inactive> implements Advice.Dispatcher.Unresolved, Advice.Dispatcher.Resolved.ForMethodEnter, Advice.Dispatcher.Resolved.ForMethodExit, Advice.Dispatcher.Bound.ForMethodEnter, Advice.Dispatcher.Bound.ForMethodExit
Advice.Dispatcher.Resolved.ForMethodEnter.SkipDispatcher
Advice.Dispatcher.Resolved.ForMethodEnter, Advice.Dispatcher.Resolved.ForMethodExit
Advice.Dispatcher.Bound, Advice.Dispatcher.Delegating, Advice.Dispatcher.Inactive, Advice.Dispatcher.Inlining, Advice.Dispatcher.Resolved, Advice.Dispatcher.SuppressionHandler, Advice.Dispatcher.Unresolved
Advice.Dispatcher.Bound.ForMethodEnter, Advice.Dispatcher.Bound.ForMethodExit, Advice.Dispatcher.Bound.SkipHandler
Enum Constant and Description |
---|
INSTANCE
The singleton instance.
|
IGNORE_ANNOTATION, IGNORE_METHOD
Modifier and Type | Method and Description |
---|---|
void |
apply()
Applies this dispatcher.
|
void |
apply(Advice.Dispatcher.Bound.SkipHandler skipHandler)
Applies this dispatcher.
|
Advice.Dispatcher.Resolved.ForMethodEnter |
asMethodEnter(List<? extends Advice.OffsetMapping.Factory<?>> userFactories,
ClassReader classReader)
Resolves this dispatcher as a dispatcher for entering a method.
|
Advice.Dispatcher.Resolved.ForMethodExit |
asMethodExitTo(List<? extends Advice.OffsetMapping.Factory<?>> userFactories,
ClassReader classReader,
Advice.Dispatcher.Resolved.ForMethodEnter dispatcher)
Resolves this dispatcher as a dispatcher for exiting a method.
|
Advice.Dispatcher.Inactive |
bind(TypeDescription instrumentedType,
MethodDescription instrumentedMethod,
MethodVisitor methodVisitor,
Implementation.Context implementationContext,
Assigner assigner,
Advice.MethodSizeHandler.ForInstrumentedMethod methodSizeHandler,
Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler,
StackManipulation exceptionHandler)
Binds this dispatcher for resolution to a specific method.
|
TypeDefinition |
getEnterType()
Returns the type that this dispatcher supplies as a result of its advice or a description of
void if
no type is supplied as a result of the enter advice. |
TypeDescription |
getThrowable()
Returns the type of throwable for which this exit advice is supposed to be invoked.
|
boolean |
isAlive()
Returns
true if this dispatcher is alive. |
boolean |
isBinary()
Indicates that this dispatcher requires access to the class file declaring the advice method.
|
boolean |
isPrependLineNumber()
Returns
true if the first discovered line number information should be prepended to the advice code. |
void |
prepare()
Prepares the advice method's exception handlers.
|
static Advice.Dispatcher.Inactive |
valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static Advice.Dispatcher.Inactive[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final Advice.Dispatcher.Inactive INSTANCE
public static Advice.Dispatcher.Inactive[] values()
for (Advice.Dispatcher.Inactive c : Advice.Dispatcher.Inactive.values()) System.out.println(c);
public static Advice.Dispatcher.Inactive valueOf(String name)
name
- the name of the enum constant to be returned.IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is nullpublic boolean isAlive()
Advice.Dispatcher
true
if this dispatcher is alive.isAlive
in interface Advice.Dispatcher
true
if this dispatcher is alive.public boolean isBinary()
Advice.Dispatcher.Unresolved
isBinary
in interface Advice.Dispatcher.Unresolved
true
if this dispatcher requires access to the advice method's class file.public TypeDescription getThrowable()
Advice.Dispatcher.Resolved.ForMethodExit
getThrowable
in interface Advice.Dispatcher.Resolved.ForMethodExit
Throwable
type for which to invoke this exit advice or a description of NoExceptionHandler
if this exit advice does not expect to be invoked upon any throwable.public TypeDefinition getEnterType()
Advice.Dispatcher.Resolved.ForMethodEnter
void
if
no type is supplied as a result of the enter advice.getEnterType
in interface Advice.Dispatcher.Resolved.ForMethodEnter
void
.public boolean isPrependLineNumber()
Advice.Dispatcher.Resolved.ForMethodEnter
true
if the first discovered line number information should be prepended to the advice code.isPrependLineNumber
in interface Advice.Dispatcher.Resolved.ForMethodEnter
true
if the first discovered line number information should be prepended to the advice code.public Advice.Dispatcher.Resolved.ForMethodEnter asMethodEnter(List<? extends Advice.OffsetMapping.Factory<?>> userFactories, ClassReader classReader)
Advice.Dispatcher.Unresolved
asMethodEnter
in interface Advice.Dispatcher.Unresolved
userFactories
- A list of custom factories for binding parameters of an advice method.classReader
- A class reader to query for a class file which might be null
if this dispatcher is not binary.public Advice.Dispatcher.Resolved.ForMethodExit asMethodExitTo(List<? extends Advice.OffsetMapping.Factory<?>> userFactories, ClassReader classReader, Advice.Dispatcher.Resolved.ForMethodEnter dispatcher)
Advice.Dispatcher.Unresolved
asMethodExitTo
in interface Advice.Dispatcher.Unresolved
userFactories
- A list of custom factories for binding parameters of an advice method.classReader
- A class reader to query for a class file which might be null
if this dispatcher is not binary.dispatcher
- The dispatcher for entering a method.public void prepare()
Advice.Dispatcher.Bound
prepare
in interface Advice.Dispatcher.Bound
public void apply()
Advice.Dispatcher.Bound.ForMethodExit
apply
in interface Advice.Dispatcher.Bound.ForMethodExit
public void apply(Advice.Dispatcher.Bound.SkipHandler skipHandler)
Advice.Dispatcher.Bound.ForMethodEnter
apply
in interface Advice.Dispatcher.Bound.ForMethodEnter
skipHandler
- The skip handler to use.public Advice.Dispatcher.Inactive bind(TypeDescription instrumentedType, MethodDescription instrumentedMethod, MethodVisitor methodVisitor, Implementation.Context implementationContext, Assigner assigner, Advice.MethodSizeHandler.ForInstrumentedMethod methodSizeHandler, Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler, StackManipulation exceptionHandler)
Advice.Dispatcher.Resolved
bind
in interface Advice.Dispatcher.Resolved
bind
in interface Advice.Dispatcher.Resolved.ForMethodEnter
bind
in interface Advice.Dispatcher.Resolved.ForMethodExit
instrumentedType
- The instrumented type.instrumentedMethod
- The instrumented method.methodVisitor
- The method visitor for writing the instrumented method.implementationContext
- The implementation context to use.assigner
- The assigner to use.methodSizeHandler
- A handler for computing the method size requirements.stackMapFrameHandler
- A handler for translating and injecting stack map frames.exceptionHandler
- The stack manipulation to apply within a suppression handler.Copyright © 2014–2017. All rights reserved.