Class TaskController
java.lang.Object
edu.cnm.deepdive.teamassignments.controller.TaskController
@RestController
@RequestMapping("/groups/{groupId}/tasks")
public class TaskController
extends Object
Controller for task with spring annotation mapping.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
assign(boolean assigned, long groupId, long taskId, long memberId, Authentication auth)
boolean value meant to assign a task to a user.void
delete(long groupId, long taskId, Authentication auth)
get(long groupId, long taskId, Authentication auth)
getAll(long groupId, Authentication auth)
gets all tasks available for that specific group.boolean
isAssigned(long groupId, long taskId, long memberId, Authentication auth)
Get mapping for isAssigned boolean value.post(Task task, long groupId, Authentication auth)
post mapping for adding a task.put(long groupId, long taskId, Task task, Authentication auth)
-
Constructor Details
-
TaskController
constructor for Task.- Parameters:
service
- TaskService class, used for repository work.
-
-
Method Details
-
post
@PostMapping(consumes="application/json", produces="application/json") public ResponseEntity<Task> post(@RequestBody Task task, @PathVariable long groupId, Authentication auth)post mapping for adding a task.- Parameters:
task
- Task object from task entity class.groupId
- parent group id.auth
- token for an authenticated principal once the request has been processed by the AuthenticationManager.authenticate(Authentication) method.- Returns:
- Task object via json.
-
get
@GetMapping(value="/{taskId}", produces="application/json") public Task get(@PathVariable long groupId, @PathVariable long taskId, Authentication auth) -
delete
@DeleteMapping("/{taskId}") @ResponseStatus(NO_CONTENT) public void delete(@PathVariable long groupId, @PathVariable long taskId, Authentication auth) -
put
@PutMapping(value="/{taskId}", produces="application/json") public Task put(@PathVariable long groupId, @PathVariable long taskId, @RequestBody Task task, Authentication auth) -
assign
@PutMapping(value="/{taskId}/members/{memberId}", consumes="application/json", produces="application/json") public boolean assign(@RequestBody boolean assigned, @PathVariable long groupId, @PathVariable long taskId, @PathVariable long memberId, Authentication auth)boolean value meant to assign a task to a user.- Parameters:
assigned
- boolean value verifying assignment of group.groupId
- parent group id.taskId
- task id of task within the group.memberId
- member id of member within the group.auth
- token for an authenticated principal once the request has been processed by the AuthenticationManager.authenticate(Authentication) method.- Returns:
- provide boolean value verifying ownership of task.
-
isAssigned
@GetMapping(value="/{taskId}/members/{memberId}", consumes="application/json", produces="application/json") public boolean isAssigned(@PathVariable long groupId, @PathVariable long taskId, @PathVariable long memberId, Authentication auth)Get mapping for isAssigned boolean value.- Parameters:
groupId
- parent group id.taskId
- task id of task within the group.memberId
- member id of member within the group.auth
- token for an authenticated principal once the request has been processed by the AuthenticationManager.authenticate(Authentication) method.- Returns:
- provide assignment verification of task.
-
getAll
@GetMapping(produces="application/json") public Iterable<Task> getAll(@PathVariable long groupId, Authentication auth)gets all tasks available for that specific group.- Parameters:
groupId
- parent group id.auth
- token for an authenticated principal once the request has been processed by the AuthenticationManager.authenticate(Authentication) method.- Returns:
- provide Iterable Task Object.
-