Annotation Type Morph
-
@Documented @Retention(RUNTIME) @Target(PARAMETER) public @interface Morph
This annotation instructs Byte Buddy to inject a proxy class that calls a method's super method with explicit arguments. For this, theMorph.Binder
needs to be installed for an interface type that takes an argument of the array typeObject
and returns a non-array type ofObject
. This is an alternative to using theSuperCall
orDefaultCall
annotations which call a super method using the same arguments as the intercepted method was invoked with.
-
-
Optional Element Summary
Optional Elements Modifier and Type Optional Element Description boolean
defaultMethod
Determines if the proxy should attempt to invoke a default method.java.lang.Class<?>
defaultTarget
The type on which a default method should be invoked.boolean
serializableProxy
Determines if the injected proxy for this parameter should be serializable.
-
-
-
-
defaultMethod
boolean defaultMethod
Determines if the proxy should attempt to invoke a default method. If the default method is ambiguous, use thedefaultTarget()
property instead which allows to determine an explicit interface on which the default method should be invoked on. If this other method is used, this property is ignored.- Returns:
true
if a default method should be ignored.
- Default:
- false
-
-
-
defaultTarget
java.lang.Class<?> defaultTarget
The type on which a default method should be invoked. When this property is not set and thedefaultMethod()
property is set tofalse
, a normal super method invocation is attempted.- Returns:
- The target interface of a default method call.
- Default:
- void.class
-
-