@HashCodeAndEqualsPlugin.Enhance protected abstract static class Advice.Dispatcher.Delegating.Resolved.ForMethodEnter extends Advice.Dispatcher.Delegating.Resolved implements Advice.Dispatcher.Resolved.ForMethodEnter
Modifier and Type | Class and Description |
---|---|
protected static class |
Advice.Dispatcher.Delegating.Resolved.ForMethodEnter.WithDiscardedEnterType
Implementation of an advice that does not expose an enter type.
|
protected static class |
Advice.Dispatcher.Delegating.Resolved.ForMethodEnter.WithRetainedEnterType
Implementation of an advice that does expose an enter type.
|
Advice.Dispatcher.Delegating.Resolved.AdviceMethodWriter, Advice.Dispatcher.Delegating.Resolved.ForMethodEnter, Advice.Dispatcher.Delegating.Resolved.ForMethodExit
Advice.Dispatcher.Resolved.AbstractBase, Advice.Dispatcher.Resolved.ForMethodEnter, Advice.Dispatcher.Resolved.ForMethodExit
Advice.Dispatcher.Bound, Advice.Dispatcher.Delegating, Advice.Dispatcher.Inactive, Advice.Dispatcher.Inlining, Advice.Dispatcher.RelocationHandler, Advice.Dispatcher.Resolved, Advice.Dispatcher.SuppressionHandler, Advice.Dispatcher.Unresolved
delegator
adviceMethod, offsetMappings, postProcessor, relocationHandler, suppressionHandler
IGNORE_ANNOTATION, IGNORE_METHOD
Modifier | Constructor and Description |
---|---|
protected |
ForMethodEnter(MethodDescription.InDefinedShape adviceMethod,
Advice.PostProcessor postProcessor,
List<? extends Advice.OffsetMapping.Factory<?>> userFactories,
TypeDefinition exitType,
Advice.Delegator delegator)
Creates a new resolved dispatcher for implementing method enter advice.
|
Modifier and Type | Method and Description |
---|---|
protected Advice.Dispatcher.Bound |
doResolve(TypeDescription instrumentedType,
MethodDescription instrumentedMethod,
MethodVisitor methodVisitor,
Implementation.Context implementationContext,
Assigner assigner,
Advice.ArgumentHandler.ForAdvice argumentHandler,
Advice.MethodSizeHandler.ForAdvice methodSizeHandler,
Advice.StackMapFrameHandler.ForAdvice stackMapFrameHandler,
Advice.Dispatcher.SuppressionHandler.Bound suppressionHandler,
Advice.Dispatcher.RelocationHandler.Bound relocationHandler)
Binds this dispatcher for resolution to a specific method.
|
Map<String,TypeDefinition> |
getNamedTypes()
Returns the named types declared by this enter 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,
Advice.Delegator delegator,
List<? extends Advice.OffsetMapping.Factory<?>> userFactories,
TypeDefinition exitType,
boolean methodExit)
Resolves enter advice that only exposes the enter type if this is necessary.
|
protected Advice.Dispatcher.Bound |
resolve(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.
|
bind
isAlive
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
bind
getAdviceType, isAlive
protected ForMethodEnter(MethodDescription.InDefinedShape adviceMethod, Advice.PostProcessor postProcessor, List<? extends Advice.OffsetMapping.Factory<?>> userFactories, TypeDefinition exitType, Advice.Delegator delegator)
adviceMethod
- The represented advice method.postProcessor
- The post processor to apply.userFactories
- A list of user-defined factories for offset mappings.exitType
- The exit type or void
if no exit type is defined.delegator
- The delegator to use.protected static Advice.Dispatcher.Resolved.ForMethodEnter of(MethodDescription.InDefinedShape adviceMethod, Advice.PostProcessor postProcessor, Advice.Delegator delegator, List<? extends Advice.OffsetMapping.Factory<?>> userFactories, TypeDefinition exitType, boolean methodExit)
adviceMethod
- The advice method.postProcessor
- The post processor to apply.delegator
- The delegator to use.userFactories
- A list of user-defined factories for offset mappings.exitType
- The exit type or void
if no exit type is defined.methodExit
- true
if exit advice is applied.public boolean isPrependLineNumber()
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 Map<String,TypeDefinition> getNamedTypes()
getNamedTypes
in interface Advice.Dispatcher.Resolved.ForMethodEnter
protected Advice.Dispatcher.Bound resolve(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)
Advice.Dispatcher.Delegating.Resolved
resolve
in class Advice.Dispatcher.Delegating.Resolved
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.exceptionHandler
- The stack manipulation to apply within a suppression handler.relocation
- A relocation to use with a relocation handler.protected Advice.Dispatcher.Bound doResolve(TypeDescription instrumentedType, MethodDescription instrumentedMethod, MethodVisitor methodVisitor, Implementation.Context implementationContext, Assigner assigner, Advice.ArgumentHandler.ForAdvice argumentHandler, Advice.MethodSizeHandler.ForAdvice methodSizeHandler, Advice.StackMapFrameHandler.ForAdvice stackMapFrameHandler, Advice.Dispatcher.SuppressionHandler.Bound suppressionHandler, Advice.Dispatcher.RelocationHandler.Bound relocationHandler)
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.Copyright © 2014–2020. All rights reserved.