Bon, je ne sais pas si j'aboie complètement le mauvais arbre ici - je trouve que JDO et Google App Engine sont un peu compliqués à saisir. Quoi qu'il en soit, voilà.Accéder à une classe personnalisée à partir d'une classe JDO
J'ai une classe qui contient une autre classe comme l'un de ses variables internes (voir player1)
@PersistenceCapable(identityType = IdentityType.APPLICATION)
public class JDOGame
{
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Long id;
@Persistent
private String map;
@Persistent
private RPCDataPlayer player1;
// getters, setters, constructors etc...
}
La RPCDataPlayer classe est Serializable et très basique ....
public class RPCDataPlayer implements IsSerializable
{
public String name;
public int id;
// getters & setters & constructors oh my
public int getId() { return id; }
}
Ainsi, ma question est ... comment puis-je créer une requête où je peux obtenir tous les JDOGames qui contiennent un RPCDataPlayer avec id = x?
Je ne peux pas faire une requête comme ...
SELECT FROM JDOGame.class.getName() WHERE player1.getId() == x
... alors quelles techniques ou suggestions que les gens ont pour que cela fonctionne?
Merci d'avance.
La seule façon dont je pensais qu'il pourrait fonctionner est d'obtenir toutes les instances de JDOGame de la Banque de données itérer puis à travers eux - mais cela ne semble pas particulièrement efficace :(Merci – Spedge