J'ai un problème simple essayer de rester au sec en utilisant Appengine.Aide pour créer une classe générique pour éviter la duplication de code
Les 2 fonctions ci-dessous sont identiques à l'exception de l'objet envoyé en paramètre. En réalité, j'ai 15 fonctions comme celle-ci. Je suis essayer de trouver un moyen de créer une super classe ou un générique pour y parvenir.
public void deleteRecord(Person s) {
PersistenceManager pm = PMF.get().getPersistenceManager();
try {
Person p = pm.getObjectById(Person.class, s.getId());
pm.deletePersistent(p);
} finally {
pm.close();
}
}
et
public void deleteRecord(Product s) {
PersistenceManager pm = PMF.get().getPersistenceManager();
try {
Product p = pm.getObjectById(Product.class, s.getId());
pm.deletePersistent(p);
} finally {
pm.close();
}
}
Malheureusement, il semble que je ne peux pas utiliser les médicaments génériques puisque les génériques ne prennent pas en charge T.class.
Toute bonne suggestion comment faire cela sans duplication?
Merci. Daniel
ne pouvez pas modifier votre méthode pour accepter une classe plutôt qu'un objet? – JRL
ces méthodes doivent-elles être dans la même classe, ou est-ce que chaque méthode est similaire à une classe? – meriton