private ReflectMethod findGetter(Class<?> fieldType,String nameToFind){ for(ReflectMethod rm : reflectClass.getMethods()){ Method m = rm.getReflectedMethod(); if(m.getParameterTypes().length == 0 && Primitives.wrap(m.getReturnType()).isAssignableFrom(fieldType)){ if(m.getName().equals(nameToFind)){ return rm; } } } return null; }
private ReflectMethod findSetter(Class<?> fieldType,String nameToFind){ //iterate all public methods. for(ReflectMethod rm : reflectClass.getMethods()){ Method m = rm.getReflectedMethod(); if(m.getParameterTypes().length == 1 && fieldType.isAssignableFrom(Primitives.wrap(m.getParameterTypes()[0]))){ if(m.getName().equals(nameToFind)){ return rm; } } } return null; }
@Override public ElMethod resolveMethod(Class<?> cls, String name, Object[] args) { ReflectClass rc = ReflectClass.of(cls); int len = args.length; for(ReflectMethod rm : rc.getMethods()){ if(rm.getName().equals(name) && rm.getParameters().length == len){ boolean ok = true; for(int i=0;i<len;i++){ Object v = args[i]; if(null != v && !rm.getParameters()[i].getType().isAssignableFrom(v.getClass())){ ok = false; break; } } if(ok){ return rm.isStatic() ? new ElStaticMethod(rm) : new ElInstanceMethod(rm); } } } return null; }
for(ReflectMethod m : rc.getMethods()) { if(m.getParameters().length == 0 && m.isAnnotationPresent(Destroy.class)) { try {
for(ReflectMethod m : rc.getMethods()){ if(m.isPublic() && m.isStatic()) {
for(ReflectMethod m : bt.getReflectClass().getMethods()) { if(!m.isPublic()) { continue;
for(ReflectMethod rm : reflectClass.getMethods()){ Method m = rm.getReflectedMethod();
for (ReflectMethod m : rc.getMethods()) { if (m.getParameters().length == 0 && m.isAnnotationPresent(Init.class)) { m.invoke(bean, Arrays2.EMPTY_OBJECT_ARRAY);
for(ReflectMethod rm : bt.getReflectClass().getMethods()) { if(rm.isGetterMethod() || rm.isSetterMethod() || rm.isSynthetic()) { continue;
for(ReflectMethod m : c.getMethods()){
for(ReflectMethod m : bt.getReflectClass().getMethods()) { if(m.isSetterMethod() || m.isGetterMethod()) { continue;