public Object getTarget() { return target; }
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
if (method.getDeclaringClass() == Object.class) return method.invoke(target, args);
Pojo pojo = method.getAnnotation(Pojo.class);
ClassMethod cm = null;
Object returnValue = null;
if (pojo != null) {
cm = targetType.getMethod(pojo.value());
} else {
cm = targetType.findMethod(method.getName(), args);
}
if (cm != null) returnValue = cm.invoke(target, args);
else if (this.allEventHandler != null && method.getAnnotation(CollectionProxyCondition.class) == null) {