package controllers; import java.util.List; import dao.Dao; import exceptions.ExceptionMapper; import managers.UserManager; import models.User; import play.libs.Json; import play.mvc.Controller; import play.mvc.Result; /** * User CRUD services. * * @author: bbenson */ public class Users extends Controller { private static final UserManager userManager = new UserManager(new Dao<User>(User.class)); public static Result list() { try { List<User> users = userManager.list(); return ok(Json.toJson(users)); } catch (RuntimeException ex) { return ExceptionMapper.toResult(ex); } } public static Result read(Long userId) { try { User user = userManager.read(userId); return ok(Json.toJson(user)); } catch (RuntimeException ex) { return ExceptionMapper.toResult(ex); } } public static Result create() { try { User userIn = Json.fromJson(request().body().asJson(), User.class); User user = userManager.create(userIn); return created(Json.toJson(user)); } catch (RuntimeException ex) { return ExceptionMapper.toResult(ex); } } public static Result update(Long userId) { try { User userIn = Json.fromJson(request().body().asJson(), User.class); User user = userManager.update(userIn); return ok(Json.toJson(user)); } catch (RuntimeException ex) { return ExceptionMapper.toResult(ex); } } public static Result delete(Long userId) { try { userManager.delete(userId); return ok(); } catch (RuntimeException ex) { return ExceptionMapper.toResult(ex); } } }