Package net.bytebuddy.asm
Class Advice.Dispatcher.Delegating.Resolved.ForMethodEnter
- java.lang.Object
-
- net.bytebuddy.asm.Advice.Dispatcher.Delegating.Resolved<Advice.Dispatcher.Bound.ForMethodEnter>
-
- net.bytebuddy.asm.Advice.Dispatcher.Delegating.Resolved.ForMethodEnter
-
- All Implemented Interfaces:
Advice.Dispatcher
,Advice.Dispatcher.Resolved
,Advice.Dispatcher.Resolved.ForMethodEnter
- Enclosing class:
- Advice.Dispatcher.Delegating.Resolved<T extends Advice.Dispatcher.Bound>
protected static class Advice.Dispatcher.Delegating.Resolved.ForMethodEnter extends Advice.Dispatcher.Delegating.Resolved<Advice.Dispatcher.Bound.ForMethodEnter> implements Advice.Dispatcher.Resolved.ForMethodEnter
A resolved dispatcher for implementing method enter advice.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class net.bytebuddy.asm.Advice.Dispatcher.Delegating.Resolved
Advice.Dispatcher.Delegating.Resolved.AdviceMethodWriter, Advice.Dispatcher.Delegating.Resolved.ForMethodEnter, Advice.Dispatcher.Delegating.Resolved.ForMethodExit
-
Nested classes/interfaces inherited from interface net.bytebuddy.asm.Advice.Dispatcher
Advice.Dispatcher.Bound, Advice.Dispatcher.Delegating, Advice.Dispatcher.Inactive, Advice.Dispatcher.Inlining, Advice.Dispatcher.Resolved, Advice.Dispatcher.SuppressionHandler, Advice.Dispatcher.Unresolved
-
Nested classes/interfaces inherited from interface net.bytebuddy.asm.Advice.Dispatcher.Resolved
Advice.Dispatcher.Resolved.ForMethodEnter, Advice.Dispatcher.Resolved.ForMethodExit
-
Nested classes/interfaces inherited from interface net.bytebuddy.asm.Advice.Dispatcher.Resolved.ForMethodEnter
Advice.Dispatcher.Resolved.ForMethodEnter.SkipDispatcher
-
-
Field Summary
-
Fields inherited from class net.bytebuddy.asm.Advice.Dispatcher.Delegating.Resolved
adviceMethod, offsetMappings, suppressionHandler
-
Fields inherited from interface net.bytebuddy.asm.Advice.Dispatcher
IGNORE_ANNOTATION, IGNORE_METHOD
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
ForMethodEnter(MethodDescription.InDefinedShape adviceMethod, java.util.List<? extends Advice.OffsetMapping.Factory<?>> userFactories)
Creates a new resolved dispatcher for implementing method enter advice.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
equals(java.lang.Object object)
TypeDefinition
getEnterType()
Returns the type that this dispatcher supplies as a result of its advice or a description ofvoid
if no type is supplied as a result of the enter advice.int
hashCode()
boolean
isPrependLineNumber()
Returnstrue
if the first discovered line number information should be prepended to the advice code.protected Advice.Dispatcher.Bound.ForMethodEnter
resolve(TypeDescription instrumentedType, MethodDescription instrumentedMethod, org.objectweb.asm.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.-
Methods inherited from class net.bytebuddy.asm.Advice.Dispatcher.Delegating.Resolved
bind, isAlive
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.bytebuddy.asm.Advice.Dispatcher
isAlive
-
Methods inherited from interface net.bytebuddy.asm.Advice.Dispatcher.Resolved.ForMethodEnter
bind
-
-
-
-
Constructor Detail
-
ForMethodEnter
protected ForMethodEnter(MethodDescription.InDefinedShape adviceMethod, java.util.List<? extends Advice.OffsetMapping.Factory<?>> userFactories)
Creates a new resolved dispatcher for implementing method enter advice.- Parameters:
adviceMethod
- The represented advice method.userFactories
- A list of user-defined factories for offset mappings.
-
-
Method Detail
-
getEnterType
public TypeDefinition getEnterType()
Description copied from interface:Advice.Dispatcher.Resolved.ForMethodEnter
Returns the type that this dispatcher supplies as a result of its advice or a description ofvoid
if no type is supplied as a result of the enter advice.- Specified by:
getEnterType
in interfaceAdvice.Dispatcher.Resolved.ForMethodEnter
- Returns:
- The type that this dispatcher supplies as a result of its advice or a description of
void
.
-
isPrependLineNumber
public boolean isPrependLineNumber()
Description copied from interface:Advice.Dispatcher.Resolved.ForMethodEnter
Returnstrue
if the first discovered line number information should be prepended to the advice code.- Specified by:
isPrependLineNumber
in interfaceAdvice.Dispatcher.Resolved.ForMethodEnter
- Returns:
true
if the first discovered line number information should be prepended to the advice code.
-
resolve
protected Advice.Dispatcher.Bound.ForMethodEnter resolve(TypeDescription instrumentedType, MethodDescription instrumentedMethod, org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext, Assigner assigner, Advice.MethodSizeHandler.ForInstrumentedMethod methodSizeHandler, Advice.StackMapFrameHandler.ForInstrumentedMethod stackMapFrameHandler, StackManipulation exceptionHandler)
Description copied from class:Advice.Dispatcher.Delegating.Resolved
Binds this dispatcher for resolution to a specific method.- Specified by:
resolve
in classAdvice.Dispatcher.Delegating.Resolved<Advice.Dispatcher.Bound.ForMethodEnter>
- Parameters:
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.- Returns:
- An appropriate bound advice dispatcher.
-
equals
public boolean equals(java.lang.Object object)
- Overrides:
equals
in classAdvice.Dispatcher.Delegating.Resolved<Advice.Dispatcher.Bound.ForMethodEnter>
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classAdvice.Dispatcher.Delegating.Resolved<Advice.Dispatcher.Bound.ForMethodEnter>
-
-