Interface TimeIntervalReportBuilder<B extends TimeIntervalReportBuilder<B,I,H>,I extends AgeQueryItem,H extends TimeIntervalColumnHeader>
- Type Parameters:
B- the true Builder behind this Interface.I- the AgeQueryItem which will be inserted into the Report.H- the column Header
- All Superinterfaces:
Report.Builder<I,H>
- All Known Subinterfaces:
ClassificationCategoryReport.Builder,ClassificationReport.Builder,TaskCustomFieldValueReport.Builder,TimestampReport.Builder,WorkbasketReport.Builder
- All Known Implementing Classes:
ClassificationCategoryReportBuilderImpl,ClassificationReportBuilderImpl,TaskCustomFieldValueReportBuilderImpl,TimestampReportBuilderImpl,WorkbasketReportBuilderImpl
-
Method Summary
Modifier and TypeMethodDescriptionbuildReport(TaskTimestamp timestamp) Builds the Report for the specified TaskTimestamp.classificationCategoryIn(List<String> classificationCategory) Adds a list of classificationCategories to the builder.classificationIdIn(List<String> classificationIds) Adds a list of classificationIds to the builder.customAttributeIn(TaskCustomField customField, String... strings) Adds the values of a certain TaskCustomField for exact matching to the builder.customAttributeLike(TaskCustomField customField, String... strings) Adds the values of a certain TaskCustomField for pattern matching to the builder.customAttributeNotIn(TaskCustomField customField, String... strings) Excludes the values of a certain TaskCustomField to the builder.customIntAttributeIn(TaskCustomIntField customIntField, Integer... values) Adds the values of a certain TaskCustomIntField for exact matching to the builder.customIntAttributeNotIn(TaskCustomIntField customIntField, Integer... values) Excludes the values of a certain TaskCustomIntField to the builder.customIntAttributeNotWithin(TaskCustomIntField customIntField, IntInterval... values) Exclude ranges of TaskCustomIntField for matching to the builder.customIntAttributeWithin(TaskCustomIntField customIntField, IntInterval... values) Adds ranges of TaskCustomIntField for matching to the TimeIntervalReportBuilder.Adds a list of domains to the builder.excludedClassificationIdIn(List<String> excludedClassificationIds) Adds a list of excludedClassificationIds to the builder.If this filter is used, the days of the Report are counted in working days.listCustomAttributeValuesForCustomAttributeName(TaskCustomField taskCustomField) Returns a list of all values of an entered custom field that are in the Report.listTaskIdsForSelectedItems(List<SelectedItem> selectedItems, TaskTimestamp timestamp) Returns a list of all taskIds of the Report that are in the list of selected items.Adds a list of states to the builder.withColumnHeaders(List<H> columnHeaders) Adds a list TimeIntervalColumnHeaders to the Builder to subdivide theReportinto clusters.workbasketIdIn(List<String> workbasketIds) Adds a list of workbasket ids to the builder.Methods inherited from interface pro.taskana.monitor.api.reports.Report.Builder
buildReport
-
Method Details
-
withColumnHeaders
Adds a list TimeIntervalColumnHeaders to the Builder to subdivide theReportinto clusters.- Parameters:
columnHeaders- the column headers the Report should consist of.- Returns:
- the TimeIntervalReportBuilder
-
inWorkingDays
B inWorkingDays()If this filter is used, the days of the Report are counted in working days.- Returns:
- the TimeIntervalReportBuilder
-
workbasketIdIn
Adds a list of workbasket ids to the builder. The created Report contains only Tasks with a workbasketId in this list.- Parameters:
workbasketIds- a list of workbasket ids- Returns:
- the TimeIntervalReportBuilder
-
stateIn
Adds a list of states to the builder. The created Report contains only Tasks with a state in this list.- Parameters:
states- a list of states- Returns:
- the TimeIntervalReportBuilder
-
classificationCategoryIn
Adds a list of classificationCategories to the builder. The created Report contains only Tasks with a category in this list.- Parameters:
classificationCategory- a list of classificationCategories- Returns:
- the TimeIntervalReportBuilder
-
classificationIdIn
Adds a list of classificationIds to the builder. The created Report contains only Tasks with a classificationId in this list.- Parameters:
classificationIds- a list of classificationIds- Returns:
- the TimeIntervalReportBuilder
-
excludedClassificationIdIn
Adds a list of excludedClassificationIds to the builder. The created Report contains only Tasks with a classificationId NOT in this list.- Parameters:
excludedClassificationIds- a list of excludedClassificationIds- Returns:
- the TimeIntervalReportBuilder
-
domainIn
Adds a list of domains to the builder. The created Report contains only Tasks with a domain in this list.- Parameters:
domains- a list of domains- Returns:
- the TimeIntervalReportBuilder
-
customAttributeIn
Adds the values of a certain TaskCustomField for exact matching to the builder.The created Report contains only Tasks with a custom attribute value exactly matching one of the items in the List.
- Parameters:
customField- the specified TaskCustomFieldstrings- the values the specified custom attribute should match- Returns:
- the modified TimeIntervalReportBuilder
- Throws:
InvalidArgumentException- if filter values are not given
-
customAttributeNotIn
B customAttributeNotIn(TaskCustomField customField, String... strings) throws InvalidArgumentException Excludes the values of a certain TaskCustomField to the builder.The created Report contains only Tasks with a custom attribute value not matching one of the items in the List.
- Parameters:
customField- the specified TaskCustomFieldstrings- the values the specified custom attribute should not match- Returns:
- the modified TimeIntervalReportBuilder
- Throws:
InvalidArgumentException- if filter values are not given
-
customIntAttributeIn
B customIntAttributeIn(TaskCustomIntField customIntField, Integer... values) throws InvalidArgumentException Adds the values of a certain TaskCustomIntField for exact matching to the builder.The created Report contains only Tasks with a custom attribute value exactly matching one of the items in the List.
- Parameters:
customIntField- the specified TaskCustomIntFieldvalues- the values the specified customIntField should match- Returns:
- the modified TimeIntervalReportBuilder
- Throws:
InvalidArgumentException- if filter values are not given
-
customIntAttributeNotIn
B customIntAttributeNotIn(TaskCustomIntField customIntField, Integer... values) throws InvalidArgumentException Excludes the values of a certain TaskCustomIntField to the builder.The created Report contains only Tasks with a custom attribute value not matching one of the items in the List.
- Parameters:
customIntField- the specified TaskCustomIntFieldvalues- the values the specified customIntFields should not match- Returns:
- the modified TimeIntervalReportBuilder
- Throws:
InvalidArgumentException- if filter values are not given
-
customIntAttributeWithin
Adds ranges of TaskCustomIntField for matching to the TimeIntervalReportBuilder.The created Report contains only Tasks with a customIntField value being inside the range of one of the items in the list.
- Parameters:
customIntField- the specified TaskCustomIntFieldvalues- the values the specified customIntField should match- Returns:
- the modified TimeIntervalReportBuilder
-
customIntAttributeNotWithin
Exclude ranges of TaskCustomIntField for matching to the builder.The created report contains only Tasks with a customIntField value being not inside the range of one of the items in the list.
- Parameters:
customIntField- the specified TaskCustomIntFieldvalues- the values the specified customIntField should match- Returns:
- the modified TimeIntervalReportBuilder
-
customAttributeLike
B customAttributeLike(TaskCustomField customField, String... strings) throws InvalidArgumentException Adds the values of a certain TaskCustomField for pattern matching to the builder.The created Report contains only Tasks with a custom attribute value pattern-matching one of the items in the list. They will be compared in SQL with the LIKE operator. You may use a wildcard like % to specify the pattern. If you specify multiple arguments they are combined with the OR keyword.
- Parameters:
customField- the specified TaskCustomFieldstrings- the values the specified custom attribute should match- Returns:
- the modified TimeIntervalReportBuilder
- Throws:
InvalidArgumentException- if filter values are not given
-
listTaskIdsForSelectedItems
List<String> listTaskIdsForSelectedItems(List<SelectedItem> selectedItems, TaskTimestamp timestamp) throws InvalidArgumentException, NotAuthorizedException Returns a list of all taskIds of the Report that are in the list of selected items.- Parameters:
selectedItems- a list of selectedItemstimestamp- the TaskTimestamp of interest- Returns:
- the list of all taskIds
- Throws:
InvalidArgumentException- if the column headers are not initializedNotAuthorizedException- if the current user is not member of TaskanaRole.MONITOR or TaskanaRole.ADMIN
-
listCustomAttributeValuesForCustomAttributeName
List<String> listCustomAttributeValuesForCustomAttributeName(TaskCustomField taskCustomField) throws NotAuthorizedException Returns a list of all values of an entered custom field that are in the Report.- Parameters:
taskCustomField- the TaskCustomField whose values should appear in the list- Returns:
- the list of all custom attribute values
- Throws:
NotAuthorizedException- if the current user is not member of TaskanaRole.MONITOR or TaskanaRole.ADMIN
-
buildReport
Report<I,H> buildReport(TaskTimestamp timestamp) throws InvalidArgumentException, NotAuthorizedException Builds the Report for the specified TaskTimestamp.- Parameters:
timestamp- The TaskTimestamp of interest- Returns:
- The build Report
- Throws:
NotAuthorizedException- if the current user is not member of TaskanaRole.MONITOR or TaskanaRole.ADMINInvalidArgumentException- if an error occurs
-