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
public interface TimeIntervalReportBuilder<B extends TimeIntervalReportBuilder<B,I,H>,I extends AgeQueryItem,H extends TimeIntervalColumnHeader> extends Report.Builder<I,H>
"Super" Interface for all TimeIntervalReportBuilders.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Report<I,H>buildReport(TaskTimestamp timestamp)Builds the Report for the specified TaskTimestamp.BclassificationCategoryIn(List<String> classificationCategory)Adds a list of classificationCategories to the builder.BclassificationIdIn(List<String> classificationIds)Adds a list of classificationIds to the builder.BcustomAttributeIn(TaskCustomField customField, String... strings)Adds the values of a certain TaskCustomField for exact matching to the builder.BcustomAttributeLike(TaskCustomField customField, String... strings)Adds the values of a certain TaskCustomField for pattern matching to the builder.BcustomAttributeNotIn(TaskCustomField customField, String... strings)Excludes the values of a certain TaskCustomField to the builder.BcustomIntAttributeIn(TaskCustomIntField customIntField, Integer... values)Adds the values of a certain TaskCustomIntField for exact matching to the builder.BcustomIntAttributeNotIn(TaskCustomIntField customIntField, Integer... values)Excludes the values of a certain TaskCustomIntField to the builder.BcustomIntAttributeNotWithin(TaskCustomIntField customIntField, IntInterval... values)Exclude ranges of TaskCustomIntField for matching to the builder.BcustomIntAttributeWithin(TaskCustomIntField customIntField, IntInterval... values)Adds ranges of TaskCustomIntField for matching to the TimeIntervalReportBuilder.BdomainIn(List<String> domains)Adds a list of domains to the builder.BexcludedClassificationIdIn(List<String> excludedClassificationIds)Adds a list of excludedClassificationIds to the builder.BinWorkingDays()If this filter is used, the days of the Report are counted in working days.List<String>listCustomAttributeValuesForCustomAttributeName(TaskCustomField taskCustomField)Returns a list of all values of an entered custom field that are in the Report.List<String>listTaskIdsForSelectedItems(List<SelectedItem> selectedItems, TaskTimestamp timestamp)Returns a list of all taskIds of the Report that are in the list of selected items.BstateIn(List<TaskState> states)Adds a list of states to the builder.BwithColumnHeaders(List<H> columnHeaders)Adds a list TimeIntervalColumnHeaders to the Builder to subdivide theReportinto clusters.BworkbasketIdIn(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 Detail
-
withColumnHeaders
B withColumnHeaders(List<H> columnHeaders)
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
B workbasketIdIn(List<String> workbasketIds)
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
B stateIn(List<TaskState> states)
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
B classificationCategoryIn(List<String> classificationCategory)
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
B classificationIdIn(List<String> classificationIds)
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
B excludedClassificationIdIn(List<String> excludedClassificationIds)
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
B domainIn(List<String> domains)
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
B customAttributeIn(TaskCustomField customField, String... strings) throws InvalidArgumentException
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
B customIntAttributeWithin(TaskCustomIntField customIntField, IntInterval... values)
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
B customIntAttributeNotWithin(TaskCustomIntField customIntField, IntInterval... values)
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
-
-