protected abstract static class Advice.Dispatcher.Delegating.Resolved 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.OffsetMapping, 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.Dispatcher.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<Advice.Dispatcher.OffsetMapping.Factory> factories,
TypeDescription throwableType)
Creates a new resolved version of a dispatcher.
|
Modifier and Type | Method and Description |
---|---|
Advice.Dispatcher.Bound |
bind(MethodDescription.InDefinedShape instrumentedMethod,
MethodVisitor methodVisitor,
Advice.MethodSizeHandler methodSizeHandler,
Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler)
Binds this dispatcher for resolution to a specific method.
|
boolean |
equals(Object other) |
int |
hashCode() |
boolean |
isAlive()
Returns
true if this dispatcher is alive. |
protected abstract Advice.Dispatcher.Bound |
resolve(MethodDescription.InDefinedShape instrumentedMethod,
MethodVisitor methodVisitor,
Advice.MethodSizeHandler methodSizeHandler,
Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler)
Binds this dispatcher for resolution to a specific method.
|
protected final MethodDescription.InDefinedShape adviceMethod
protected final List<Advice.Dispatcher.OffsetMapping> offsetMappings
protected final Advice.Dispatcher.SuppressionHandler suppressionHandler
protected Resolved(MethodDescription.InDefinedShape adviceMethod, List<Advice.Dispatcher.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 Advice.Dispatcher.Bound bind(MethodDescription.InDefinedShape instrumentedMethod, MethodVisitor methodVisitor, Advice.MethodSizeHandler methodSizeHandler, Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler)
Advice.Dispatcher.Resolved
bind
in interface Advice.Dispatcher.Resolved
instrumentedMethod
- The instrumented method.methodVisitor
- The method visitor for writing the instrumented method.methodSizeHandler
- A handler for computing the method size requirements.stackMapFrameHandler
- A handler for translating and injecting stack map frames.protected abstract Advice.Dispatcher.Bound resolve(MethodDescription.InDefinedShape instrumentedMethod, MethodVisitor methodVisitor, Advice.MethodSizeHandler methodSizeHandler, Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler)
instrumentedMethod
- The instrumented method that is being bound.methodVisitor
- The method visitor for writing to the instrumented method.methodSizeHandler
- A handler for computing the method size requirements.stackMapFrameHandler
- A handler for translating and injecting stack map frames.Copyright © 2014–2016. All rights reserved.