protected abstract static class Advice.Dispatcher.Inlining.Resolved.ForMethodExit extends Advice.Dispatcher.Inlining.Resolved implements Advice.Dispatcher.Resolved.ForMethodExit
| Modifier and Type | Class and Description |
|---|---|
protected class |
Advice.Dispatcher.Inlining.Resolved.ForMethodExit.AdviceMethodInliner
An advice method inliner for a method exit.
|
protected static class |
Advice.Dispatcher.Inlining.Resolved.ForMethodExit.WithExceptionHandler
Implementation of exit advice that handles exceptions.
|
protected static class |
Advice.Dispatcher.Inlining.Resolved.ForMethodExit.WithoutExceptionHandler
Implementation of exit advice that ignores exceptions.
|
Advice.Dispatcher.Inlining.Resolved.ForMethodEnter, Advice.Dispatcher.Inlining.Resolved.ForMethodExitAdvice.Dispatcher.Resolved.ForMethodEnter, Advice.Dispatcher.Resolved.ForMethodExitAdvice.Dispatcher.Bound, Advice.Dispatcher.Delegating, Advice.Dispatcher.Inactive, Advice.Dispatcher.Inlining, Advice.Dispatcher.OffsetMapping, Advice.Dispatcher.Resolved, Advice.Dispatcher.SuppressionHandler, Advice.Dispatcher.UnresolvedadviceMethod, classReader, offsetMappings, suppressionHandlerIGNORE_ANNOTATION, IGNORE_METHOD| Modifier | Constructor and Description |
|---|---|
protected |
ForMethodExit(MethodDescription.InDefinedShape adviceMethod,
List<? extends Advice.Dispatcher.OffsetMapping.Factory> userFactories,
ClassReader classReader,
TypeDefinition enterType)
Creates a new resolved dispatcher for implementing method exit advice.
|
| Modifier and Type | Method and Description |
|---|---|
protected MethodVisitor |
apply(MethodVisitor methodVisitor,
Implementation.Context implementationContext,
Assigner assigner,
Advice.MethodSizeHandler.ForInstrumentedMethod methodSizeHandler,
Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler,
TypeDescription instrumentedType,
MethodDescription instrumentedMethod,
Advice.Dispatcher.SuppressionHandler.Bound suppressionHandler)
Applies a resolution for a given instrumented method.
|
Advice.Dispatcher.Bound.ForMethodExit |
bind(TypeDescription instrumentedType,
MethodDescription instrumentedMethod,
MethodVisitor methodVisitor,
Implementation.Context implementationContext,
Assigner assigner,
Advice.MethodSizeHandler.ForInstrumentedMethod methodSizeHandler,
Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler)
Binds this dispatcher for resolution to a specific method.
|
boolean |
equals(Object other) |
protected abstract StackSize |
getPadding()
Returns the additional padding this exit advice implies.
|
int |
hashCode() |
protected static Advice.Dispatcher.Resolved.ForMethodExit |
of(MethodDescription.InDefinedShape adviceMethod,
List<? extends Advice.Dispatcher.OffsetMapping.Factory> userFactories,
ClassReader classReader,
TypeDefinition enterType)
Resolves exit advice that handles exceptions depending on the specification of the exit advice.
|
isAliveclone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitgetThrowableisAliveprotected ForMethodExit(MethodDescription.InDefinedShape adviceMethod, List<? extends Advice.Dispatcher.OffsetMapping.Factory> userFactories, ClassReader classReader, TypeDefinition enterType)
adviceMethod - The represented advice method.userFactories - A list of user-defined factories for offset mappings.classReader - The class reader for parsing the advice method's class file.enterType - The type of the value supplied by the enter advice method or
a description of void if no such value exists.protected static Advice.Dispatcher.Resolved.ForMethodExit of(MethodDescription.InDefinedShape adviceMethod, List<? extends Advice.Dispatcher.OffsetMapping.Factory> userFactories, ClassReader classReader, TypeDefinition enterType)
adviceMethod - The advice method.userFactories - A list of user-defined factories for offset mappings.classReader - The class reader for parsing the advice method's class file.enterType - The type of the value supplied by the enter advice method or
a description of void if no such value exists.protected MethodVisitor apply(MethodVisitor methodVisitor, Implementation.Context implementationContext, Assigner assigner, Advice.MethodSizeHandler.ForInstrumentedMethod methodSizeHandler, Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler, TypeDescription instrumentedType, MethodDescription instrumentedMethod, Advice.Dispatcher.SuppressionHandler.Bound suppressionHandler)
Advice.Dispatcher.Inlining.Resolvedapply in class Advice.Dispatcher.Inlining.ResolvedmethodVisitor - A method visitor for writing byte code 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.instrumentedType - A description of the instrumented type.instrumentedMethod - A description of the instrumented method.suppressionHandler - The bound suppression handler that is used for suppressing exceptions of this advice method.public Advice.Dispatcher.Bound.ForMethodExit bind(TypeDescription instrumentedType, MethodDescription instrumentedMethod, MethodVisitor methodVisitor, Implementation.Context implementationContext, Assigner assigner, Advice.MethodSizeHandler.ForInstrumentedMethod methodSizeHandler, Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler)
Advice.Dispatcher.Resolvedbind in interface Advice.Dispatcher.Resolvedbind in interface Advice.Dispatcher.Resolved.ForMethodExitinstrumentedType - 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.protected abstract StackSize getPadding()
public boolean equals(Object other)
equals in class Advice.Dispatcher.Inlining.Resolvedpublic int hashCode()
hashCode in class Advice.Dispatcher.Inlining.ResolvedCopyright © 2014–2016. All rights reserved.