@HashCodeAndEqualsPlugin.Enhance protected static class MethodDelegation.Appender extends java.lang.Object implements ByteCodeAppender
MethodDelegation
.ByteCodeAppender.Compound, ByteCodeAppender.Simple, ByteCodeAppender.Size
Modifier and Type | Field and Description |
---|---|
private Assigner |
assigner
The assigner to use.
|
private MethodDelegation.ImplementationDelegate.Compiled |
compiled
The compiled implementation delegate.
|
private Implementation.Target |
implementationTarget
The implementation target of this implementation.
|
private MethodDelegationBinder.Record |
processor
The method delegation binder processor which is responsible for implementing the method delegation.
|
private MethodDelegationBinder.TerminationHandler |
terminationHandler
A termination handler for a method delegation binder.
|
Modifier | Constructor and Description |
---|---|
protected |
Appender(Implementation.Target implementationTarget,
MethodDelegationBinder.Record processor,
MethodDelegationBinder.TerminationHandler terminationHandler,
Assigner assigner,
MethodDelegation.ImplementationDelegate.Compiled compiled)
Creates a new appender for a method delegation.
|
Modifier and Type | Method and Description |
---|---|
ByteCodeAppender.Size |
apply(org.objectweb.asm.MethodVisitor methodVisitor,
Implementation.Context implementationContext,
MethodDescription instrumentedMethod)
Applies this byte code appender to a type creation process.
|
private final Implementation.Target implementationTarget
private final MethodDelegationBinder.Record processor
private final MethodDelegationBinder.TerminationHandler terminationHandler
private final Assigner assigner
private final MethodDelegation.ImplementationDelegate.Compiled compiled
protected Appender(Implementation.Target implementationTarget, MethodDelegationBinder.Record processor, MethodDelegationBinder.TerminationHandler terminationHandler, Assigner assigner, MethodDelegation.ImplementationDelegate.Compiled compiled)
implementationTarget
- The implementation target of this implementation.processor
- The method delegation binder processor which is responsible for implementing the method delegation.terminationHandler
- A termination handler for a method delegation binder.assigner
- The assigner to use.compiled
- The compiled implementation delegate.public ByteCodeAppender.Size apply(org.objectweb.asm.MethodVisitor methodVisitor, Implementation.Context implementationContext, MethodDescription instrumentedMethod)
apply
in interface ByteCodeAppender
methodVisitor
- The method visitor to which the byte code appender writes its code to.implementationContext
- The implementation context of the current type creation process.instrumentedMethod
- The method that is the target of the instrumentation.