package fr.emn.nuitinfo.model.persistence.impl;
import static com.googlecode.objectify.ObjectifyService.ofy;
import java.util.List;
import com.google.gson.Gson;
import fr.emn.nuitinfo.model.Utilisateur;
import fr.emn.nuitinfo.model.interfaces.IUtilisateur;
import fr.emn.nuitinfo.model.persistence.IDAO;
public class UtilisateurDatastoreDAO implements IDAO<IUtilisateur> {
@Override
public List<IUtilisateur> retrieveAll() {
return ofy().load().type(IUtilisateur.class).list();
}
@Override
public void create(String t) {
Gson gson = new Gson();
Utilisateur utilisateur = gson.fromJson(t, Utilisateur.class);
ofy().save().entity(utilisateur);
}
@Override
public IUtilisateur retrieveByName(String name) {
return ofy().load().type(IUtilisateur.class).id(name).get();
}
@Override
public void update(String name, String t) {
Gson gson = new Gson();
IUtilisateur utilisateur = gson.fromJson(t, IUtilisateur.class);
ofy().delete().type(IUtilisateur.class).id(utilisateur.getUsername());
ofy().save().entity(utilisateur);
}
@Override
public void remove(String name) {
ofy().delete().type(IUtilisateur.class).id(name);
}
}