public static Result getUserGifts(String userId) { if (!Utils.checkCredentials(request())) { return unauthorized(); } try { User user = UserDAO.getInstance().findUserById(userId); ObjectNode result = Json.newObject(); ArrayNode resultArr = new ArrayNode(JsonNodeFactory.instance); for (UserGiftMap userGiftMap : user.getWonGifts()) resultArr.add(GiftDAO.getInstance().findGiftById(userGiftMap.getGiftId()).toJson()); result.put("gifts", resultArr); return ok(result); } catch (Exception e) { return generateInternalServer(e.getMessage()); } }