@Override @DELETE @Path("/workitem/{workItemName}") // fix problem with equals in user class // can't remove from user.workItem map public Response removeWorkItem(@PathParam("workItemName") final String workItemName) { WorkItem workItem = ticketSystemService.getWorkItem(workItemName); ticketSystemService.removeWorkItem(workItem); return Response.status(200).build(); }
@Override @GET @Path("user/workitem/{workItemName}") public Response getUsersWithWorkItem(@PathParam("workItemName") final String workItemName) { try { WorkItem workItem = ticketSystemService.getWorkItem(workItemName); List<User> users = ticketSystemService.getUsersWithWorkItem(workItem); return Response.status(200).entity(gson.toJson(users)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @PUT @Path("/workitem/addtouser/{userID}") public Response addWorkItemToUser( final WorkItem workItem, @PathParam("userID") final String userID) { try { final User user = ticketSystemService.getUserWithID(userID); ticketSystemService.addWorkItemToUser(userID, workItem); return Response.status(200).entity(gson.toJson(user)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @PUT @Path("/workitem/changestatus/{workItemName}/{status}") public Response changeWorkItemStatus( @PathParam("workItemName") final String workItemName, @PathParam("status") final String status) { try { WorkItem updateWorkItem = ticketSystemService.getWorkItem(workItemName); updateWorkItem = ticketSystemService.changeWorkItemStatus(updateWorkItem, status); return Response.status(200).entity(gson.toJson(updateWorkItem)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @GET @Path("/workitem/getallwithissue") public Response getWorkItemsWithIssue() { try { List<WorkItem> workItems = ticketSystemService.getWorkItemsWithIssue(); return Response.status(200).entity(gson.toJson(workItems)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @GET @Path("/user/getall/{page}/{amount}") public Response getAllUsers(@PathParam("page") int page, @PathParam("amount") int amount) { try { final Page<User> users = ticketSystemService.getAllUsers(page, amount); return Response.status(200).entity(gson.toJson(users.getContent())).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @GET @Path("/team/getallusers/{teamName}") public Response getAllUsersFromTeam(@PathParam("teamName") final String teamName) { try { List<User> teamMembers = ticketSystemService.getUsersByTeamName(teamName); return Response.status(200).entity(gson.toJson(teamMembers)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @GET @Path("/team/getall") public Response getAllTeams() { try { List<Team> allTeams = ticketSystemService.getAllTeams(); return Response.status(200).entity(gson.toJson(allTeams)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @DELETE @Path("/team/{teamName}") public Response removeTeam(@PathParam("teamName") final String teamName) { try { ticketSystemService.removeTeam(teamName); return Response.status(200).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @GET @Path("/team/{teamName}") public Response getTeam(@PathParam("teamName") final String teamName) { try { Team team = ticketSystemService.getTeam(teamName); return Response.status(200).entity(gson.toJson(team)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @DELETE @Path("/issue/{issueID}") public Response removeIssue(@PathParam("issueID") final long id) { try { ticketSystemService.removeIssue(id); return Response.status(200).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @PUT @Path("/issue/{issueID}") public Response updateIssue(final Issue issue, @PathParam("issueID") final long issueID) { try { Issue updatedIssue = ticketSystemService.updateIssue(issue, issueID); return Response.status(200).entity(gson.toJson(updatedIssue)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @GET @Path("/issue/{issueID}") public Response getIssue(@PathParam("issueID") final long id) { try { Issue issue = ticketSystemService.getIssue(id); return Response.status(200).entity(gson.toJson(issue)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @GET @Path("/workitem/getallwithstatus/{statusName}") public Response getAllWorkItemsWithStatus(@PathParam("statusName") final String statusName) { try { List<WorkItem> workItems = ticketSystemService.getAllWorkItemsWithStatus(statusName); return Response.status(200).entity(gson.toJson(workItems)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @GET @Path("/user/username/{userName}") public Response getUserWithUserName(@PathParam("userName") final String userName) { try { final User user = ticketSystemService.getUserWithUserName(userName); return Response.status(200).entity(gson.toJson(user)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @GET @Path("/user/lastname/{lastName}") public Response getUsersWithLastName(@PathParam("lastname") final String lastName) { try { final List<User> users = ticketSystemService.getUsersWithLastName(lastName); return Response.status(200).entity(gson.toJson(users)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @PUT @Path("/user") public Response updateUser(final User user) { try { final User updateUser = ticketSystemService.updateUser(user); return Response.status(200).entity(gson.toJson(updateUser)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @DELETE @Path("/user/{userID}") public Response removeUser(@PathParam("userID") final String userID) { try { ticketSystemService.removeUser(userID); return Response.status(200).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @GET @Path("/workitem/itemsfromteam/{teamName}") public Response getWorkItemsFromTeam(@PathParam("teamName") final Team teamName) { try { List<WorkItem> workItems = ticketSystemService.getWorkItemsFromTeam(teamName); return Response.status(200).entity(gson.toJson(workItems)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @GET @Path("/workitem/itemsfromuser/{userID}") public Response getWorkItemsFromUser(@PathParam("userID") final String userID) { try { List<WorkItem> workItems = ticketSystemService.getWorkItemsFromUser(userID); return Response.status(200).entity(gson.toJson(workItems)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @POST @Path("/user") public Response addUser(final User user) { try { ticketSystemService.addUser(user); final URI location = uriInfo.getAbsolutePathBuilder().path(user.getUserID()).build(); return Response.created(location).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @POST @Path("/issue") public Response addIssue(final Issue issue) { try { ticketSystemService.addIssue(issue); final URI location = uriInfo.getAbsolutePathBuilder().path("" + issue.getId()).build(); return Response.created(location).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @POST @Path("/team") public Response addTeam(final Team team) { try { ticketSystemService.addTeam(team); final URI location = uriInfo.getAbsolutePathBuilder().path(team.getTeamName()).build(); return Response.created(location).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @PUT @Path("/workitem") public Response updateWorkItem(WorkItem workItem) { try { WorkItem updatedWorkItem = ticketSystemService.updateWorkItem(workItem); final URI location = uriInfo.getAbsolutePathBuilder().path(updatedWorkItem.getName()).build(); return Response.created(location).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }
@Override @GET @Path("/workitem/descriptionlike/{description}") public Response getWorkItemWithDescriptionLike( @PathParam("description") final String description) { try { List<WorkItem> workItems = ticketSystemService.getWorkItemWithDescriptionLike(description); return Response.status(200).entity(gson.toJson(workItems)).build(); } catch (final TicketSystemServiceException exception) { return Response.status(400).entity(exception).build(); } }