基本的に同じプロパティに対して異なるプロパティ名を使用するサードパーティのJavaクラスがたくさんあります。
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);
}
これらを正規化された形式で対処できるようにして、ポリモーフィックに処理できるようにしたいと思います。また、次のような Apache BeanUtils を使用して処理できるようにしたいと考えています。
PropertyUtils.copyProperties(object1,object2);
明らかに、各クラスのアダプターを作成するのは簡単です...
public class CanonicalizedBar implements CanonicalizedBazBean {
public String getReferenceID() {
return this.delegate.getRefID();
}
// etc.
}
しかし、もっと一般化された動的なものがあるのだろうか? プロパティ名の等価性の 1 対多のマップとデリゲート クラスを取り、アダプターを生成するものはありますか?