@HashCodeAndEqualsPlugin.Enhance protected static class InvocationHandlerAdapter.ForField extends InvocationHandlerAdapter implements InvocationHandlerAdapter.WithoutPrivilegeConfiguration
InvocationHandlerAdapter
that delegates method
invocations to an adapter that is stored in an instance field.Modifier and Type | Class and Description |
---|---|
protected class |
InvocationHandlerAdapter.ForField.Appender
An appender for implementing the
InvocationHandlerAdapter.ForField . |
InvocationHandlerAdapter.AssignerConfigurable, InvocationHandlerAdapter.ForField, InvocationHandlerAdapter.ForInstance, InvocationHandlerAdapter.WithoutPrivilegeConfiguration
Implementation.Composable, Implementation.Compound, Implementation.Context, Implementation.Simple, Implementation.SpecialMethodInvocation, Implementation.Target
assigner, cached, fieldName, privileged
Modifier | Constructor and Description |
---|---|
protected |
ForField(String fieldName,
boolean cached,
boolean privileged,
Assigner assigner,
FieldLocator.Factory fieldLocatorFactory)
Creates a new invocation handler adapter that loads its value from a field.
|
Modifier and Type | Method and Description |
---|---|
ByteCodeAppender |
appender(Implementation.Target implementationTarget)
Creates a byte code appender that determines the implementation of the instrumented type's methods.
|
InstrumentedType |
prepare(InstrumentedType instrumentedType)
Prepares a given instrumented type.
|
Implementation |
withAssigner(Assigner assigner)
Configures an assigner to use with this invocation handler adapter.
|
InvocationHandlerAdapter.WithoutPrivilegeConfiguration |
withoutMethodCache()
By default, any
Method instance that is handed over to an
InvocationHandler is cached in a static field. |
InvocationHandlerAdapter.AssignerConfigurable |
withPrivilegedLookup()
Configures that the method constants supplied to the invocation handler adapter are resolved using an
AccessController . |
protected ForField(String fieldName, boolean cached, boolean privileged, Assigner assigner, FieldLocator.Factory fieldLocatorFactory)
fieldName
- The name of the field.cached
- Determines if the Method
instances that are handed to the
intercepted methods are cached in static
fields.privileged
- Determines if the Method
instances are retrieved by using
an AccessController
.assigner
- The assigner to apply when defining this implementation.fieldLocatorFactory
- The field locator factory to use.public InvocationHandlerAdapter.WithoutPrivilegeConfiguration withoutMethodCache()
InvocationHandlerAdapter
Method
instance that is handed over to an
InvocationHandler
is cached in a static field. By invoking this method,
this feature can be disabled.withoutMethodCache
in class InvocationHandlerAdapter
public Implementation withAssigner(Assigner assigner)
InvocationHandlerAdapter
withAssigner
in interface InvocationHandlerAdapter.AssignerConfigurable
withAssigner
in class InvocationHandlerAdapter
assigner
- The assigner to apply when defining this implementation.assigner
configured.public InvocationHandlerAdapter.AssignerConfigurable withPrivilegedLookup()
InvocationHandlerAdapter
AccessController
.withPrivilegedLookup
in interface InvocationHandlerAdapter.WithoutPrivilegeConfiguration
withPrivilegedLookup
in class InvocationHandlerAdapter
public InstrumentedType prepare(InstrumentedType instrumentedType)
prepare
in interface InstrumentedType.Prepareable
instrumentedType
- The instrumented type in its current form.public ByteCodeAppender appender(Implementation.Target implementationTarget)
appender
in interface Implementation
implementationTarget
- The target of the current implementation.InstrumentedType.Prepareable.prepare(InstrumentedType)
.Copyright © 2014–2020. All rights reserved.