Class MonitorController


  • @RestController
    @EnableHypermediaSupport(type=HAL)
    public class MonitorController
    extends Object
    Controller for all monitoring endpoints.
    • Method Detail

      • computeWorkbasketReport

        @GetMapping(path="/api/v1/monitor/workbasket-report")
        @Transactional(readOnly=true,
                       rollbackFor=java.lang.Exception.class)
        public org.springframework.http.ResponseEntity<ReportRepresentationModel> computeWorkbasketReport​(TimeIntervalReportFilterParameter filterParameter,
                                                                                                          @RequestParam(name="task-timestamp",required=false)
                                                                                                          pro.taskana.monitor.api.TaskTimestamp taskTimestamp)
                                                                                                   throws pro.taskana.common.api.exceptions.NotAuthorizedException,
                                                                                                          pro.taskana.common.api.exceptions.InvalidArgumentException
        This endpoint generates a Workbasket Report.

        Each Row represents a Workbasket.

        Each Column Header represents a Time Interval.

        Parameters:
        filterParameter - the filter 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 Report
        pro.taskana.common.api.exceptions.InvalidArgumentException - TODO: this is never thrown ...
      • computePriorityWorkbasketReport

        @GetMapping(path="/api/v1/monitor/workbasket-priority-report")
        @Transactional(readOnly=true,
                       rollbackFor=java.lang.Exception.class)
        public org.springframework.http.ResponseEntity<ReportRepresentationModel> computePriorityWorkbasketReport​(PriorityReportFilterParameter filterParameter,
                                                                                                                  @RequestParam(name="workbasket-type",required=false)
                                                                                                                  pro.taskana.workbasket.api.WorkbasketType[] workbasketTypes,
                                                                                                                  @RequestParam(name="columnHeader",required=false)
                                                                                                                  PriorityColumnHeaderRepresentationModel[] columnHeaders)
                                                                                                           throws pro.taskana.common.api.exceptions.NotAuthorizedException,
                                                                                                                  pro.taskana.common.api.exceptions.InvalidArgumentException
        This endpoint generates a Workbasket Priority Report.

        Each Row represents a Workbasket.

        Each Column Header represents a priority range.

        Parameters:
        filterParameter - the filter parameters
        workbasketTypes - determine the WorkbasketTypes to include in the report
        columnHeaders - the column headers for the report
        Returns:
        the computed Report
        Throws:
        pro.taskana.common.api.exceptions.NotAuthorizedException - if the current user is not authorized to compute the Report
        pro.taskana.common.api.exceptions.InvalidArgumentException - if topicWorkbaskets or useDefaultValues are false
      • computeClassificationCategoryReport

        @GetMapping(path="/api/v1/monitor/classification-category-report")
        @Transactional(readOnly=true,
                       rollbackFor=java.lang.Exception.class)
        public org.springframework.http.ResponseEntity<ReportRepresentationModel> computeClassificationCategoryReport​(TimeIntervalReportFilterParameter filterParameter,
                                                                                                                      @RequestParam(name="task-timestamp",required=false)
                                                                                                                      pro.taskana.monitor.api.TaskTimestamp taskTimestamp)
                                                                                                               throws pro.taskana.common.api.exceptions.InvalidArgumentException,
                                                                                                                      pro.taskana.common.api.exceptions.NotAuthorizedException
        This endpoint generates a Classification Category Report

        Each Row represents a Classification category.

        Each Column Header represents a Time Interval.

        Parameters:
        filterParameter - the filter 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 Report
        pro.taskana.common.api.exceptions.InvalidArgumentException - TODO: this is never thrown ...
      • computeClassificationReport

        @GetMapping(path="/api/v1/monitor/classification-report")
        @Transactional(readOnly=true,
                       rollbackFor=java.lang.Exception.class)
        public org.springframework.http.ResponseEntity<ReportRepresentationModel> computeClassificationReport​(TimeIntervalReportFilterParameter filterParameter,
                                                                                                              @RequestParam(name="task-timestamp",required=false)
                                                                                                              pro.taskana.monitor.api.TaskTimestamp taskTimestamp)
                                                                                                       throws pro.taskana.common.api.exceptions.NotAuthorizedException,
                                                                                                              pro.taskana.common.api.exceptions.InvalidArgumentException
        This endpoint generates a Classification Report.

        Each Row represents a Classification.

        Each Column Header represents a Time Interval.

        Parameters:
        filterParameter - the filter 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 Report
        pro.taskana.common.api.exceptions.InvalidArgumentException - TODO: this is never thrown
      • computeDetailedClassificationReport

        @GetMapping(path="/api/v1/monitor/detailed-classification-report")
        @Transactional(readOnly=true,
                       rollbackFor=java.lang.Exception.class)
        public org.springframework.http.ResponseEntity<ReportRepresentationModel> computeDetailedClassificationReport​(TimeIntervalReportFilterParameter filterParameter,
                                                                                                                      @RequestParam(name="task-timestamp",required=false)
                                                                                                                      pro.taskana.monitor.api.TaskTimestamp taskTimestamp)
                                                                                                               throws pro.taskana.common.api.exceptions.NotAuthorizedException,
                                                                                                                      pro.taskana.common.api.exceptions.InvalidArgumentException
        This endpoint generates a Detailed Classification Report.

        Each Foldable Row represents a Classification and can be expanded to show the Classification of Attachments.

        Each Column Header represents a Time Interval.

        Parameters:
        filterParameter - the filter 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 Report
        pro.taskana.common.api.exceptions.InvalidArgumentException - TODO: this is never thrown
      • computeTaskCustomFieldValueReport

        @GetMapping(path="/api/v1/monitor/task-custom-field-value-report")
        @Transactional(readOnly=true,
                       rollbackFor=java.lang.Exception.class)
        public org.springframework.http.ResponseEntity<ReportRepresentationModel> computeTaskCustomFieldValueReport​(@RequestParam(name="custom-field")
                                                                                                                    pro.taskana.task.api.TaskCustomField customField,
                                                                                                                    TimeIntervalReportFilterParameter filterParameter,
                                                                                                                    @RequestParam(name="task-timestamp",required=false)
                                                                                                                    pro.taskana.monitor.api.TaskTimestamp taskTimestamp)
                                                                                                             throws pro.taskana.common.api.exceptions.NotAuthorizedException,
                                                                                                                    pro.taskana.common.api.exceptions.InvalidArgumentException
        This endpoint generates a Task Custom Field Value Report.

        Each Row represents a value of the requested Task Custom Field.

        Each Column Header represents a Time Interval

        Parameters:
        customField - the Task Custom Field whose values are of interest
        filterParameter - the filter 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 Report
        pro.taskana.common.api.exceptions.InvalidArgumentException - TODO: this is never thrown
      • computeTaskStatusReport

        @GetMapping(path="/api/v1/monitor/task-status-report")
        @Transactional(readOnly=true,
                       rollbackFor=java.lang.Exception.class)
        public org.springframework.http.ResponseEntity<ReportRepresentationModel> computeTaskStatusReport​(@RequestParam(name="domain",required=false)
                                                                                                          List<String> domains,
                                                                                                          @RequestParam(name="state",required=false)
                                                                                                          List<pro.taskana.task.api.TaskState> states,
                                                                                                          @RequestParam(name="workbasket-id",required=false)
                                                                                                          List<String> workbasketIds,
                                                                                                          @RequestParam(name="priority-minimum",required=false)
                                                                                                          Integer priorityMinimum)
                                                                                                   throws pro.taskana.common.api.exceptions.NotAuthorizedException
        This endpoint generates a Task Status Report.

        Each Row represents a Workbasket.

        Each Column Header 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 Report
        Throws:
        pro.taskana.common.api.exceptions.NotAuthorizedException - if the current user is not authorized to compute the Report
      • computeTimestampReport

        @GetMapping(path="/api/v1/monitor/timestamp-report")
        @Transactional(readOnly=true,
                       rollbackFor=java.lang.Exception.class)
        public org.springframework.http.ResponseEntity<ReportRepresentationModel> computeTimestampReport​(TimeIntervalReportFilterParameter filterParameter,
                                                                                                         @RequestParam(name="task-timestamp",required=false)
                                                                                                         pro.taskana.monitor.api.TaskTimestamp[] timestamps)
                                                                                                  throws pro.taskana.common.api.exceptions.NotAuthorizedException,
                                                                                                         pro.taskana.common.api.exceptions.InvalidArgumentException
        This endpoint generates a Timestamp Report.

        Each Foldable Row represents a TaskTimestamp and can be expanded to display the four organization levels of the corresponding Workbasket.

        Each Column Header represents a TimeInterval.

        Parameters:
        filterParameter - the filter parameter
        timestamps - Filter by the Task Timestamp of the task
        Returns:
        the computed report
        Throws:
        pro.taskana.common.api.exceptions.NotAuthorizedException - if the current user is not authorized to compute the report
        pro.taskana.common.api.exceptions.InvalidArgumentException - TODO: this is never thrown