in base/src/main/java/org/apache/commons/chain2/base/DispatchCommand.java [97:120]
protected Method extractMethod(C context) throws NoSuchMethodException {
String methodName = this.getMethod();
if (methodName == null) {
Object methodContextObj = context.get(this.getMethodKey());
if (methodContextObj == null) {
throw new NullPointerException("No value found in context under " + this.getMethodKey());
}
methodName = methodContextObj.toString();
}
Method theMethod = null;
synchronized (methods) {
theMethod = methods.get(methodName);
if (theMethod == null) {
theMethod = getClass().getMethod(methodName, getSignature());
methods.put(methodName, theMethod);
}
}
return theMethod;
}