Tengo un montón de terceros clases Java que utilizan diferentes nombres de propiedades por lo que son esencialmente la misma propiedad:canonicalizing Java nombres de propiedades frijol
public class Foo {
public String getReferenceID();
public void setReferenceID(String id);
public String getFilename();
public void setFilename(String fileName);
}
public class Bar {
public String getRefID();
public void setRefID(String id);
public String getFileName();
public void setFileName(String fileName);
}
Me gustaría ser capaz de hacer frente a estos en una forma canónica, de modo que pueda tratarlos polimórfica, y por lo que puedo hacer cosas con Apache BeanUtils gustan:
PropertyUtils.copyProperties(object1,object2);
claro que sería trivial para escribir un adaptador para cada clase ...
public class CanonicalizedBar implements CanonicalizedBazBean {
public String getReferenceID() {
return this.delegate.getRefID();
}
// etc.
}
Pero me pregunto ¿hay algo más generalizado y dinámico? ¿Algo que tomaría un mapa uno a muchos de las equivalencias de nombre de propiedad, y una clase de delegado, y produciría el Adaptador?
Gracias. Parece hacer el trabajo exacto sin etapas intermedias no deseadas. – slim