package uk.ac.cam.echo.server.resources; import uk.ac.cam.echo.data.Interest; import uk.ac.cam.echo.data.User; import uk.ac.cam.echo.data.resources.InterestResource; import uk.ac.cam.echo.server.HibernateUtil; import uk.ac.cam.echo.server.models.InterestModel; import javax.ws.rs.core.Response; import java.util.Collection; public class InterestResourceImpl implements InterestResource { private User user; public InterestResourceImpl(User user) { this.user = user; } public Collection<Interest> getAll() { return user.getInterests(); } public Interest get(long id) { return (Interest) HibernateUtil.getTransaction().get(InterestModel.class, id); } public Response delete(long id) { HibernateUtil.getTransaction().delete(get(id)); return Response.ok().build(); } public Response update(Interest m) { HibernateUtil.getTransaction().update(m); return Response.ok().build(); } public Interest create(Interest data) { data.setUser(this.user); HibernateUtil.getTransaction().save(data); return data; } }