Nous avons un POJO qui est généré automatiquement avec environ 60 propriétés. Ceci est généré avec avro 1.4, qui n'inclut pas les getters / setters.
Une bibliothèque que nous utilisons pour fournir des transformations simples entre des objets nécessite des méthodes de type getter / setter pour fonctionner correctement.
Existe-t-il un moyen de répliquer les getters / setters sans avoir à remplacer manuellement le POJO et à créer tous les getters / setters manuellement?
public class BigGeneratedPojo {
public String firstField;
public int secondField;
...
public ComplexObject nthField;
}
public class OtherObject {
private String reprOfFirstFieldFromOtherObject;
private ComplexObject reprOfFirstFieldFromOtherObject;
public String getReprOfFirstFieldFromOtherObject() { ... standard impl ... };
public void setReprOfFirstFieldFromOtherObject() { ... standard impl ... };
}
le souhait est d'écrire du code qui ressemble à:
Mapper<BigGeneratedPojo, OtherObject> mapper =
MagicalMapperLibrary.mapperBuilder(BigGeneratedPojo.class, OtherObject.class)
.from(BigGeneratedPojo::getFirstField).to(OtherObject::reprOfFirstFieldFromOtherObject)
.build();
BigGeneratedPojo pojo = new BigGeneratedPojo();
pojo.firstField = "test";
OtherObject mappedOtherObj = mapper.map(pojo);
assertEquals(mappedOtherObj.getReprOfFirstFieldFromOtherObject(), "test");