T
- The type of advice dispatcher that is bound.protected abstract static class Advice.Dispatcher.Delegating.Resolved<T extends Advice.Dispatcher.Bound> extends Object implements Advice.Dispatcher.Resolved
Modifier and Type | Class and Description |
---|---|
protected static class |
Advice.Dispatcher.Delegating.Resolved.AdviceMethodWriter
A bound advice method that copies the code by first extracting the exception table and later appending the
code of the method without copying any meta data.
|
protected static class |
Advice.Dispatcher.Delegating.Resolved.ForMethodEnter
A resolved dispatcher for implementing method enter advice.
|
protected static class |
Advice.Dispatcher.Delegating.Resolved.ForMethodExit
A resolved dispatcher for implementing method exit advice.
|
Advice.Dispatcher.Bound, Advice.Dispatcher.Delegating, Advice.Dispatcher.Inactive, Advice.Dispatcher.Inlining, Advice.Dispatcher.Resolved, Advice.Dispatcher.SuppressionHandler, Advice.Dispatcher.Unresolved
Modifier and Type | Field and Description |
---|---|
protected MethodDescription.InDefinedShape |
adviceMethod
The represented advice method.
|
protected List<Advice.OffsetMapping> |
offsetMappings
An unresolved mapping of offsets of the advice method based on the annotations discovered on each method parameter.
|
protected Advice.Dispatcher.SuppressionHandler |
suppressionHandler
The suppression handler to use.
|
IGNORE_ANNOTATION, IGNORE_METHOD
Modifier | Constructor and Description |
---|---|
protected |
Resolved(MethodDescription.InDefinedShape adviceMethod,
List<? extends Advice.OffsetMapping.Factory<?>> factories,
TypeDescription throwableType)
Creates a new resolved version of a dispatcher.
|
Modifier and Type | Method and Description |
---|---|
T |
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.
|
boolean |
equals(Object object) |
int |
hashCode() |
boolean |
isAlive()
Returns
true if this dispatcher is alive. |
protected abstract T |
resolve(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.
|
protected final MethodDescription.InDefinedShape adviceMethod
protected final List<Advice.OffsetMapping> offsetMappings
protected final Advice.Dispatcher.SuppressionHandler suppressionHandler
protected Resolved(MethodDescription.InDefinedShape adviceMethod, List<? extends Advice.OffsetMapping.Factory<?>> factories, TypeDescription throwableType)
adviceMethod
- The represented advice method.factories
- A list of factories to resolve for the parameters of the advice method.throwableType
- The type to handle by a suppression handler or NoExceptionHandler
to not handle any exceptions.public boolean isAlive()
Advice.Dispatcher
true
if this dispatcher is alive.isAlive
in interface Advice.Dispatcher
true
if this dispatcher is alive.public T 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
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.protected abstract T resolve(TypeDescription instrumentedType, MethodDescription instrumentedMethod, MethodVisitor methodVisitor, Implementation.Context implementationContext, Assigner assigner, Advice.MethodSizeHandler.ForInstrumentedMethod methodSizeHandler, Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler, StackManipulation exceptionHandler)
instrumentedType
- A description of the instrumented type.instrumentedMethod
- The instrumented method that is being bound.methodVisitor
- The method visitor for writing to 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.