public class PolymorphicDispatcher<RT> extends Object
| Modifier and Type | Class and Description |
|---|---|
static class |
PolymorphicDispatcher.DefaultErrorHandler<RT> |
static interface |
PolymorphicDispatcher.ErrorHandler<P> |
protected class |
PolymorphicDispatcher.MethodDesc |
static class |
PolymorphicDispatcher.MethodNameFilter |
static class |
PolymorphicDispatcher.NullErrorHandler<RT> |
static class |
PolymorphicDispatcher.Predicates |
static class |
PolymorphicDispatcher.WarningErrorHandler<RT> |
| Constructor and Description |
|---|
PolymorphicDispatcher(List<? extends Object> targets,
com.google.common.base.Predicate<Method> methodFilter) |
PolymorphicDispatcher(List<? extends Object> targets,
com.google.common.base.Predicate<Method> methodFilter,
PolymorphicDispatcher.ErrorHandler<RT> handler) |
PolymorphicDispatcher(String methodName,
int minParams,
int maxParams,
List<? extends Object> targets) |
PolymorphicDispatcher(String methodName,
int minParams,
int maxParams,
List<? extends Object> targets,
PolymorphicDispatcher.ErrorHandler<RT> handler) |
PolymorphicDispatcher(String methodName,
List<? extends Object> targets) |
| Modifier and Type | Method and Description |
|---|---|
protected int |
compare(PolymorphicDispatcher.MethodDesc o1,
PolymorphicDispatcher.MethodDesc o2) |
static <T> PolymorphicDispatcher<T> |
createForSingleTarget(com.google.common.base.Predicate<Method> methodFilter,
Object singleTarget) |
static <T> PolymorphicDispatcher<T> |
createForSingleTarget(String methodName,
int min,
int max,
Object singleTarget) |
static <T> PolymorphicDispatcher<T> |
createForSingleTarget(String methodName,
Object singleTarget) |
static <T> PolymorphicDispatcher<T> |
createForVarTarget(String methodName,
Object... targets) |
protected PolymorphicDispatcher.MethodDesc |
createMethodDesc(Object target,
Method method) |
protected Class<?> |
getDefaultClass(int paramIndex) |
protected RT |
handleAmbigousMethods(List<PolymorphicDispatcher.MethodDesc> result,
Object... params) |
protected RT |
handleNoSuchMethod(Object... params) |
RT |
invoke(Object... params) |
public PolymorphicDispatcher(String methodName, List<? extends Object> targets)
public PolymorphicDispatcher(String methodName, int minParams, int maxParams, List<? extends Object> targets)
public PolymorphicDispatcher(String methodName, int minParams, int maxParams, List<? extends Object> targets, PolymorphicDispatcher.ErrorHandler<RT> handler)
public PolymorphicDispatcher(List<? extends Object> targets, com.google.common.base.Predicate<Method> methodFilter)
public PolymorphicDispatcher(List<? extends Object> targets, com.google.common.base.Predicate<Method> methodFilter, PolymorphicDispatcher.ErrorHandler<RT> handler)
public static <T> PolymorphicDispatcher<T> createForSingleTarget(String methodName, Object singleTarget)
public static <T> PolymorphicDispatcher<T> createForSingleTarget(String methodName, int min, int max, Object singleTarget)
public static <T> PolymorphicDispatcher<T> createForSingleTarget(com.google.common.base.Predicate<Method> methodFilter, Object singleTarget)
public static <T> PolymorphicDispatcher<T> createForVarTarget(String methodName, Object... targets)
protected int compare(PolymorphicDispatcher.MethodDesc o1, PolymorphicDispatcher.MethodDesc o2)
protected RT handleAmbigousMethods(List<PolymorphicDispatcher.MethodDesc> result, Object... params)
protected Class<?> getDefaultClass(int paramIndex)
Void.classprotected PolymorphicDispatcher.MethodDesc createMethodDesc(Object target, Method method)
Copyright © 2015. All Rights Reserved.