Class Advice.Dispatcher.Delegating.Resolved.ForMethodEnter.WithDiscardedEnterType
java.lang.Object
net.bytebuddy.asm.Advice.Dispatcher.Resolved.AbstractBase
net.bytebuddy.asm.Advice.Dispatcher.Delegating.Resolved
net.bytebuddy.asm.Advice.Dispatcher.Delegating.Resolved.ForMethodEnter
net.bytebuddy.asm.Advice.Dispatcher.Delegating.Resolved.ForMethodEnter.WithDiscardedEnterType
- All Implemented Interfaces:
Advice.Dispatcher, Advice.Dispatcher.Resolved, Advice.Dispatcher.Resolved.ForMethodEnter
- Enclosing class:
Advice.Dispatcher.Delegating.Resolved.ForMethodEnter
protected static class Advice.Dispatcher.Delegating.Resolved.ForMethodEnter.WithDiscardedEnterType
extends Advice.Dispatcher.Delegating.Resolved.ForMethodEnter
Implementation of an advice that does not expose an enter type.
-
Nested Class Summary
Nested classes/interfaces inherited from class Advice.Dispatcher.Delegating.Resolved.ForMethodEnter
Advice.Dispatcher.Delegating.Resolved.ForMethodEnter.WithDiscardedEnterType, Advice.Dispatcher.Delegating.Resolved.ForMethodEnter.WithRetainedEnterTypeNested classes/interfaces inherited from class Advice.Dispatcher.Delegating.Resolved
Advice.Dispatcher.Delegating.Resolved.AdviceMethodWriter, Advice.Dispatcher.Delegating.Resolved.ForMethodEnter, Advice.Dispatcher.Delegating.Resolved.ForMethodExitNested classes/interfaces inherited from interface Advice.Dispatcher
Advice.Dispatcher.Bound, Advice.Dispatcher.Delegating, Advice.Dispatcher.Inactive, Advice.Dispatcher.Inlining, Advice.Dispatcher.RelocationHandler, Advice.Dispatcher.Resolved, Advice.Dispatcher.SuppressionHandler, Advice.Dispatcher.UnresolvedNested classes/interfaces inherited from interface Advice.Dispatcher.Resolved
Advice.Dispatcher.Resolved.AbstractBase, Advice.Dispatcher.Resolved.ForMethodEnter, Advice.Dispatcher.Resolved.ForMethodExit -
Field Summary
Fields inherited from class Advice.Dispatcher.Delegating.Resolved
delegatorFields inherited from class Advice.Dispatcher.Resolved.AbstractBase
offsetMappings, postProcessor, relocationHandler, suppressionHandlerFields inherited from interface Advice.Dispatcher
IGNORE_ANNOTATION, IGNORE_METHOD -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedWithDiscardedEnterType(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 that does not expose the enter type. -
Method Summary
Modifier and TypeMethodDescriptionprotected Advice.Dispatcher.BounddoResolve(TypeDescription instrumentedType, MethodDescription instrumentedMethod, org.objectweb.asm.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, StackManipulation exceptionHandler) Binds this dispatcher for resolution to a specific method.The type that is produced as a result of executing this advice method.Methods inherited from class Advice.Dispatcher.Delegating.Resolved.ForMethodEnter
getActualAdviceType, isPrependLineNumber, of, resolveMethods inherited from class Advice.Dispatcher.Delegating.Resolved
bind, getNamedTypesMethods inherited from class Advice.Dispatcher.Resolved.AbstractBase
isAliveMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Advice.Dispatcher
isAliveMethods inherited from interface Advice.Dispatcher.Resolved
bind, getNamedTypes
-
Constructor Details
-
WithDiscardedEnterType
protected WithDiscardedEnterType(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 that does not expose the enter type.- Parameters:
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 orvoidif no exit type is defined.delegator- The delegator to use.
-
-
Method Details
-
getAdviceType
The type that is produced as a result of executing this advice method.- Returns:
- A description of the type that is produced by this advice method.
-
doResolve
protected Advice.Dispatcher.Bound doResolve(TypeDescription instrumentedType, MethodDescription instrumentedMethod, org.objectweb.asm.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, StackManipulation exceptionHandler) Binds this dispatcher for resolution to a specific method.- Overrides:
doResolvein classAdvice.Dispatcher.Delegating.Resolved.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.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.- Returns:
- An appropriate bound advice dispatcher.
-