Class MonitorController
- java.lang.Object
-
- pro.taskana.monitor.rest.MonitorController
-
@RestController @EnableHypermediaSupport(type=HAL) public class MonitorController extends Object
Controller for all monitoring endpoints.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.springframework.http.ResponseEntity<ReportRepresentationModel>getClassificationReport(pro.taskana.monitor.api.TaskTimestamp taskTimestamp)This endpoint generates a Classification Report.org.springframework.http.ResponseEntity<ReportRepresentationModel>getTaskStatusReport(List<String> domains, List<pro.taskana.task.api.TaskState> states, List<String> workbasketIds, Integer priorityMinimum)This endpoint generates a Task Status Report.org.springframework.http.ResponseEntity<ReportRepresentationModel>getTasksWorkbasketPlannedDateReport(int daysInPast, List<pro.taskana.task.api.TaskState> states)org.springframework.http.ResponseEntity<ReportRepresentationModel>getTimestampReport()This endpoint generates a Timestamp Report.org.springframework.http.ResponseEntity<ReportRepresentationModel>getWorkbasketReport(List<pro.taskana.task.api.TaskState> states, pro.taskana.monitor.api.TaskTimestamp taskTimestamp)This endpoint generates a Workbasket Report.
-
-
-
Method Detail
-
getTaskStatusReport
@GetMapping(path="/api/v1/monitor/tasks-status-report") @Transactional(readOnly=true, rollbackFor=java.lang.Exception.class) public org.springframework.http.ResponseEntity<ReportRepresentationModel> getTaskStatusReport(@RequestParam(required=false) List<String> domains, @RequestParam(required=false) List<pro.taskana.task.api.TaskState> states, @RequestParam(name="workbasket-ids",required=false) List<String> workbasketIds, @RequestParam(name="priority-minimum",required=false) Integer priorityMinimum) throws pro.taskana.common.api.exceptions.NotAuthorizedExceptionThis endpoint generates a Task Status Report.A Task Status Report contains the total number of tasks, clustered in their Task States and grouped by Workbaskets. Each row represents a Workbasket while each column represents a Task State.
- Parameters:
domains- Filter the report values by domains.states- Filter the report values by Task states.workbasketIds- Filter the report values by Workbasket Ids.priorityMinimum- Filter the report values by a minimum priority.- Returns:
- the computed TaskStatusReport
- Throws:
pro.taskana.common.api.exceptions.NotAuthorizedException- if the current user is not authorized to compute the report
-
getWorkbasketReport
@GetMapping(path="/api/v1/monitor/tasks-workbasket-report") @Transactional(readOnly=true, rollbackFor=java.lang.Exception.class) public org.springframework.http.ResponseEntity<ReportRepresentationModel> getWorkbasketReport(@RequestParam List<pro.taskana.task.api.TaskState> states, @RequestParam(required=false) pro.taskana.monitor.api.TaskTimestamp taskTimestamp) throws pro.taskana.common.api.exceptions.NotAuthorizedException, pro.taskana.common.api.exceptions.InvalidArgumentExceptionThis endpoint generates a Workbasket Report.A WorkbasketReport contains the total numbers of tasks, clustered by the a Task Timestamp date range and grouped by Workbaskets. Each row represents a Workbasket while each column represents a date range.
- Parameters:
states- Filter the report by task statestaskTimestamp- determine which task timestamp should be used for comparison- Returns:
- the computed report
- Throws:
pro.taskana.common.api.exceptions.NotAuthorizedException- if the current user is not authorized to compute the reportpro.taskana.common.api.exceptions.InvalidArgumentException- TODO: this is never thrown ...
-
getTasksWorkbasketPlannedDateReport
@GetMapping(path="/api/v1/monitor/tasks-workbasket-planned-date-report") @Transactional(readOnly=true, rollbackFor=java.lang.Exception.class) public org.springframework.http.ResponseEntity<ReportRepresentationModel> getTasksWorkbasketPlannedDateReport(@RequestParam("daysInPast") int daysInPast, @RequestParam("states") List<pro.taskana.task.api.TaskState> states) throws pro.taskana.common.api.exceptions.NotAuthorizedException, pro.taskana.common.api.exceptions.InvalidArgumentException- Throws:
pro.taskana.common.api.exceptions.NotAuthorizedExceptionpro.taskana.common.api.exceptions.InvalidArgumentException
-
getClassificationReport
@GetMapping(path="/api/v1/monitor/tasks-classification-report") @Transactional(readOnly=true, rollbackFor=java.lang.Exception.class) public org.springframework.http.ResponseEntity<ReportRepresentationModel> getClassificationReport(@RequestParam(required=false) pro.taskana.monitor.api.TaskTimestamp taskTimestamp) throws pro.taskana.common.api.exceptions.NotAuthorizedException, pro.taskana.common.api.exceptions.InvalidArgumentExceptionThis endpoint generates a Classification Report.A Classification Report contains the total numbers of tasks, clustered by the Task Timestamp date range and grouped by Classifications. Each row represents a Classification while each column represents a date range.
- Parameters:
taskTimestamp- determine which Task Timestamp should be used for comparison- Returns:
- the computed report
- Throws:
pro.taskana.common.api.exceptions.NotAuthorizedException- if the current user is not authorized to compute the reportpro.taskana.common.api.exceptions.InvalidArgumentException- TODO: this is never thrown
-
getTimestampReport
@GetMapping(path="/api/v1/monitor/timestamp-report") @Transactional(readOnly=true, rollbackFor=java.lang.Exception.class) public org.springframework.http.ResponseEntity<ReportRepresentationModel> getTimestampReport() throws pro.taskana.common.api.exceptions.NotAuthorizedException, pro.taskana.common.api.exceptions.InvalidArgumentExceptionThis endpoint generates a Timestamp Report.A Timestamp Report contains the total number of tasks, clustered by date range and grouped by its Task Status. Each row represents a Task Status while each column represents a date range. Each row can be expanded to further group the tasks by their Org Level (1-4)
- Returns:
- the computed report
- Throws:
pro.taskana.common.api.exceptions.NotAuthorizedException- if the current user is not authorized to compute the reportpro.taskana.common.api.exceptions.InvalidArgumentException- TODO: this is never thrown
-
-