Interface MethodDelegationBinder
- All Known Implementing Classes:
TargetMethodAnnotationDrivenBinder
public interface MethodDelegationBinder
A method delegation binder is responsible for creating a method binding for a source method to a
target method. Such a binding allows to implement the source method by calling the target method.
Usually, an implementation will attempt to bind a specific source method to a set of target method candidates where all legal bindings are considered for binding. To chose a specific candidate, an
MethodDelegationBinder.AmbiguityResolver
will be consulted for selecting a best binding.-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interface
Implementations of this interface are able to attempt the resolution of two successful bindings of a method to two different target methods in order to identify a dominating binding.static interface
A binding resolver is responsible to choose a method binding between several possible candidates.static interface
A binding attempt created by aMethodDelegationBinder
.static interface
Implementations are used as delegates for invoking a method that was bound using aMethodDelegationBinder
.static interface
A binding attempt for a single parameter.static class
A helper class that allows to identify a best binding for a given type and source method choosing from a list of given target methods by using a givenMethodDelegationBinder
and anMethodDelegationBinder.AmbiguityResolver
.static interface
A method delegation that was compiled to a target method.static interface
A termination handler is responsible for terminating a method delegation. -
Method Summary
Modifier and TypeMethodDescriptioncompile
(MethodDescription candidate) Compiles this method delegation binder for a target method.
-
Method Details
-
compile
Compiles this method delegation binder for a target method.- Parameters:
candidate
- The target method to bind.- Returns:
- A compiled target for binding.
-