@GET @Path("{userId}/friends") public Response getFriends( @PathParam("userId") String userId, @QueryParam(LOGGED_IN_USER_QPARAM) String currentUser) { List<User> friends = userDao.getFriends(userId, currentUser); List<com.campusconnect.neo4j.types.web.User> returnFriends = new ArrayList<>(); for (User friend : friends) { returnFriends.add(Neo4jToWebMapper.mapUserNeo4jToWeb(friend)); } FriendsPage friendsPage = new FriendsPage(0, returnFriends.size(), returnFriends); Friends allFriends = new Friends(); allFriends.setFriends(friendsPage); if (currentUser != null && !currentUser.equals(userId)) { List<User> mutualFriends = userDao.getMutualFriends(currentUser, userId); List<com.campusconnect.neo4j.types.web.User> returnMutualFriends = new ArrayList<>(); for (User friend : mutualFriends) { returnMutualFriends.add(Neo4jToWebMapper.mapUserNeo4jToWeb(friend)); } FriendsPage mutualFriendsPage = new FriendsPage(0, returnMutualFriends.size(), returnMutualFriends); allFriends.setMutualFriends(mutualFriendsPage); } return Response.ok().entity(allFriends).build(); }