@HashCodeAndEqualsPlugin.Enhance protected abstract static class Advice.Dispatcher.Inlining.Resolved.ForMethodEnter extends Advice.Dispatcher.Inlining.Resolved implements Advice.Dispatcher.Resolved.ForMethodEnter
| Modifier and Type | Class and Description |
|---|---|
protected static class |
Advice.Dispatcher.Inlining.Resolved.ForMethodEnter.WithDiscardedEnterType
Implementation of an advice that does not expose an enter type.
|
protected static class |
Advice.Dispatcher.Inlining.Resolved.ForMethodEnter.WithRetainedEnterType
Implementation of an advice that does expose an enter type.
|
Advice.Dispatcher.Inlining.Resolved.AdviceMethodInliner, Advice.Dispatcher.Inlining.Resolved.ForMethodEnter, Advice.Dispatcher.Inlining.Resolved.ForMethodExitAdvice.Dispatcher.Resolved.AbstractBase, Advice.Dispatcher.Resolved.ForMethodEnter, Advice.Dispatcher.Resolved.ForMethodExitAdvice.Dispatcher.Bound, Advice.Dispatcher.Delegating, Advice.Dispatcher.Inactive, Advice.Dispatcher.Inlining, Advice.Dispatcher.RelocationHandler, Advice.Dispatcher.Resolved, Advice.Dispatcher.SuppressionHandler, Advice.Dispatcher.UnresolvedadviceMethod, classReaderoffsetMappings, postProcessor, relocationHandler, suppressionHandlerIGNORE_ANNOTATION, IGNORE_METHOD| Modifier | Constructor and Description |
|---|---|
protected |
ForMethodEnter(MethodDescription.InDefinedShape adviceMethod,
Advice.PostProcessor postProcessor,
Map<String,TypeDefinition> namedTypes,
List<? extends Advice.OffsetMapping.Factory<?>> userFactories,
TypeDefinition exitType,
AsmClassReader classReader)
Creates a new resolved dispatcher for implementing method enter advice.
|
| Modifier and Type | Method and Description |
|---|---|
protected MethodVisitor |
apply(MethodVisitor methodVisitor,
Implementation.Context implementationContext,
Assigner assigner,
Advice.ArgumentHandler.ForInstrumentedMethod argumentHandler,
Advice.MethodSizeHandler.ForInstrumentedMethod methodSizeHandler,
Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler,
TypeDescription instrumentedType,
MethodDescription instrumentedMethod,
Advice.Dispatcher.SuppressionHandler.Bound suppressionHandler,
Advice.Dispatcher.RelocationHandler.Bound relocationHandler,
StackManipulation exceptionHandler)
Applies a resolution for a given instrumented method.
|
Advice.Dispatcher.Bound |
bind(TypeDescription instrumentedType,
MethodDescription instrumentedMethod,
MethodVisitor methodVisitor,
Implementation.Context implementationContext,
Assigner assigner,
Advice.ArgumentHandler.ForInstrumentedMethod argumentHandler,
Advice.MethodSizeHandler.ForInstrumentedMethod methodSizeHandler,
Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler,
StackManipulation exceptionHandler,
Advice.Dispatcher.RelocationHandler.Relocation relocation)
Binds this dispatcher for resolution to a specific method.
|
protected MethodVisitor |
doApply(MethodVisitor methodVisitor,
Implementation.Context implementationContext,
Assigner assigner,
Advice.ArgumentHandler.ForAdvice argumentHandler,
Advice.MethodSizeHandler.ForAdvice methodSizeHandler,
Advice.StackMapFrameHandler.ForAdvice stackMapFrameHandler,
TypeDescription instrumentedType,
MethodDescription instrumentedMethod,
Advice.Dispatcher.SuppressionHandler.Bound suppressionHandler,
Advice.Dispatcher.RelocationHandler.Bound relocationHandler,
StackManipulation exceptionHandler)
Applies a resolution for a given instrumented method.
|
TypeDefinition |
getActualAdviceType()
Returns the actual advice type, even if it is not required post advice processing.
|
Map<String,TypeDefinition> |
getNamedTypes()
Returns the named types defined by this advice.
|
boolean |
isPrependLineNumber()
Returns
true if the first discovered line number information should be prepended to the advice code. |
protected static Advice.Dispatcher.Resolved.ForMethodEnter |
of(MethodDescription.InDefinedShape adviceMethod,
Advice.PostProcessor postProcessor,
Map<String,TypeDefinition> namedTypes,
List<? extends Advice.OffsetMapping.Factory<?>> userFactories,
TypeDefinition exitType,
AsmClassReader classReader,
boolean methodExit)
Resolves enter advice that only exposes the enter type if this is necessary.
|
protected Map<Integer,TypeDefinition> |
resolveInitializationTypes(Advice.ArgumentHandler argumentHandler)
Resolves the initialization types of this advice method.
|
isAliveclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetAdviceType, isAliveprotected ForMethodEnter(MethodDescription.InDefinedShape adviceMethod, Advice.PostProcessor postProcessor, Map<String,TypeDefinition> namedTypes, List<? extends Advice.OffsetMapping.Factory<?>> userFactories, TypeDefinition exitType, AsmClassReader classReader)
adviceMethod - The represented advice method.postProcessor - The post processor to apply.namedTypes - A mapping of all available local variables by their name to their type.userFactories - A list of user-defined factories for offset mappings.exitType - The exit type or void if no exit type is defined.classReader - A class reader to query for the class file of the advice method.protected static Advice.Dispatcher.Resolved.ForMethodEnter of(MethodDescription.InDefinedShape adviceMethod, Advice.PostProcessor postProcessor, Map<String,TypeDefinition> namedTypes, List<? extends Advice.OffsetMapping.Factory<?>> userFactories, TypeDefinition exitType, AsmClassReader classReader, boolean methodExit)
adviceMethod - The advice method.postProcessor - The post processor to apply.namedTypes - A mapping of all available local variables by their name to their type.userFactories - A list of user-defined factories for offset mappings.exitType - The exit type or void if no exit type is defined.classReader - The class reader for parsing the advice method's class file.methodExit - true if exit advice is applied.protected Map<Integer,TypeDefinition> resolveInitializationTypes(Advice.ArgumentHandler argumentHandler)
Advice.Dispatcher.Inlining.ResolvedresolveInitializationTypes in class Advice.Dispatcher.Inlining.ResolvedargumentHandler - The argument handler to use for resolving the initialization.public Advice.Dispatcher.Bound bind(TypeDescription instrumentedType, MethodDescription instrumentedMethod, MethodVisitor methodVisitor, Implementation.Context implementationContext, Assigner assigner, Advice.ArgumentHandler.ForInstrumentedMethod argumentHandler, Advice.MethodSizeHandler.ForInstrumentedMethod methodSizeHandler, Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler, StackManipulation exceptionHandler, Advice.Dispatcher.RelocationHandler.Relocation relocation)
bind in interface Advice.Dispatcher.ResolvedinstrumentedType - 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.argumentHandler - A handler for accessing values on the local variable array.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.relocation - A relocation to use with a relocation handler.public boolean isPrependLineNumber()
true if the first discovered line number information should be prepended to the advice code.isPrependLineNumber in interface Advice.Dispatcher.Resolved.ForMethodEntertrue if the first discovered line number information should be prepended to the advice code.public TypeDefinition getActualAdviceType()
getActualAdviceType in interface Advice.Dispatcher.Resolved.ForMethodEnterpublic Map<String,TypeDefinition> getNamedTypes()
getNamedTypes in interface Advice.Dispatcher.Resolvedprotected MethodVisitor apply(MethodVisitor methodVisitor, Implementation.Context implementationContext, Assigner assigner, Advice.ArgumentHandler.ForInstrumentedMethod argumentHandler, Advice.MethodSizeHandler.ForInstrumentedMethod methodSizeHandler, Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler, TypeDescription instrumentedType, MethodDescription instrumentedMethod, Advice.Dispatcher.SuppressionHandler.Bound suppressionHandler, Advice.Dispatcher.RelocationHandler.Bound relocationHandler, StackManipulation exceptionHandler)
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.argumentHandler - A handler for accessing values on the local variable array.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 - A bound suppression handler that is used for suppressing exceptions of this advice method.relocationHandler - A bound relocation handler that is responsible for considering a non-standard control flow.exceptionHandler - The exception handler that is resolved for the instrumented method.protected MethodVisitor doApply(MethodVisitor methodVisitor, Implementation.Context implementationContext, Assigner assigner, Advice.ArgumentHandler.ForAdvice argumentHandler, Advice.MethodSizeHandler.ForAdvice methodSizeHandler, Advice.StackMapFrameHandler.ForAdvice stackMapFrameHandler, TypeDescription instrumentedType, MethodDescription instrumentedMethod, Advice.Dispatcher.SuppressionHandler.Bound suppressionHandler, Advice.Dispatcher.RelocationHandler.Bound relocationHandler, 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.argumentHandler - A handler for accessing values on the local variable array.methodSizeHandler - A handler for computing the method size requirements.stackMapFrameHandler - A handler for translating and injecting stack map frames.suppressionHandler - The bound suppression handler to use.relocationHandler - The bound relocation handler to use.exceptionHandler - The exception handler that is resolved for the instrumented method.Copyright © 2014–2025. All rights reserved.