TSK-1101: restructured report-sub-package to match architecture tests

This commit is contained in:
Mustapha Zorgati 2020-02-10 11:03:28 +01:00
parent 95495e4894
commit a26e536b91
67 changed files with 641 additions and 601 deletions

View File

@ -5,7 +5,7 @@ import java.sql.SQLException;
import pro.taskana.TaskanaEngineConfiguration; import pro.taskana.TaskanaEngineConfiguration;
import pro.taskana.classification.api.ClassificationService; import pro.taskana.classification.api.ClassificationService;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.task.api.TaskService; import pro.taskana.task.api.TaskService;
import pro.taskana.task.api.TaskanaRole; import pro.taskana.task.api.TaskanaRole;
import pro.taskana.workbasket.api.WorkbasketService; import pro.taskana.workbasket.api.WorkbasketService;
@ -25,7 +25,7 @@ public interface TaskanaEngine {
* *
* @return the TaskMonitorService * @return the TaskMonitorService
*/ */
TaskMonitorService getTaskMonitorService(); MonitorService getTaskMonitorService();
/** /**
* The WorkbasketService can be used for operations on all Workbaskets. * The WorkbasketService can be used for operations on all Workbaskets.

View File

@ -44,9 +44,9 @@ import pro.taskana.common.internal.persistence.InstantTypeHandler;
import pro.taskana.common.internal.persistence.MapTypeHandler; import pro.taskana.common.internal.persistence.MapTypeHandler;
import pro.taskana.common.internal.security.CurrentUserContext; import pro.taskana.common.internal.security.CurrentUserContext;
import pro.taskana.common.internal.security.GroupPrincipal; import pro.taskana.common.internal.security.GroupPrincipal;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.report.internal.TaskMonitorMapper; import pro.taskana.monitor.internal.MonitorMapper;
import pro.taskana.report.internal.TaskMonitorServiceImpl; import pro.taskana.monitor.internal.MonitorServiceImpl;
import pro.taskana.spi.history.internal.HistoryEventProducer; import pro.taskana.spi.history.internal.HistoryEventProducer;
import pro.taskana.task.api.TaskService; import pro.taskana.task.api.TaskService;
import pro.taskana.task.api.TaskanaRole; import pro.taskana.task.api.TaskanaRole;
@ -102,10 +102,10 @@ public class TaskanaEngineImpl implements TaskanaEngine {
} }
@Override @Override
public TaskMonitorService getTaskMonitorService() { public MonitorService getTaskMonitorService() {
SqlSession session = this.sessionManager; SqlSession session = this.sessionManager;
return new TaskMonitorServiceImpl( return new MonitorServiceImpl(
internalTaskanaEngineImpl, session.getMapper(TaskMonitorMapper.class)); internalTaskanaEngineImpl, session.getMapper(MonitorMapper.class));
} }
@Override @Override
@ -250,7 +250,7 @@ public class TaskanaEngineImpl implements TaskanaEngine {
configuration.getTypeHandlerRegistry().register(Instant.class, new InstantTypeHandler()); configuration.getTypeHandlerRegistry().register(Instant.class, new InstantTypeHandler());
// add mappers // add mappers
configuration.addMapper(TaskMapper.class); configuration.addMapper(TaskMapper.class);
configuration.addMapper(TaskMonitorMapper.class); configuration.addMapper(MonitorMapper.class);
configuration.addMapper(WorkbasketMapper.class); configuration.addMapper(WorkbasketMapper.class);
configuration.addMapper(DistributionTargetMapper.class); configuration.addMapper(DistributionTargetMapper.class);
configuration.addMapper(ClassificationMapper.class); configuration.addMapper(ClassificationMapper.class);

View File

@ -1,6 +1,6 @@
package pro.taskana.report.internal; package pro.taskana.monitor.api;
import pro.taskana.report.api.WorkbasketReport; import pro.taskana.monitor.api.reports.WorkbasketReport;
/** /**
* The CombinedClassificationFilter is a pair of a classificationId for a task and a * The CombinedClassificationFilter is a pair of a classificationId for a task and a

View File

@ -1,9 +1,15 @@
package pro.taskana.report.api; package pro.taskana.monitor.api;
import pro.taskana.monitor.api.reports.CategoryReport;
import pro.taskana.monitor.api.reports.ClassificationReport;
import pro.taskana.monitor.api.reports.CustomFieldValueReport;
import pro.taskana.monitor.api.reports.TaskStatusReport;
import pro.taskana.monitor.api.reports.TimestampReport;
import pro.taskana.monitor.api.reports.WorkbasketReport;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
/** The Task Monitor Service manages operations on tasks regarding the monitoring. */ /** The Monitor Service manages operations on tasks regarding the monitoring. */
public interface TaskMonitorService { public interface MonitorService {
/** /**
* Provides a {@link WorkbasketReport.Builder} for creating a {@link WorkbasketReport}, list the * Provides a {@link WorkbasketReport.Builder} for creating a {@link WorkbasketReport}, list the

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.api;
/** /**
* An item that contains information of a selected item of a Report. It is used to get the task ids * An item that contains information of a selected item of a Report. It is used to get the task ids

View File

@ -1,12 +1,11 @@
package pro.taskana.report.api; package pro.taskana.monitor.api.reports;
import java.util.List; import java.util.List;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.report.api.structure.Report;
/** /**
* A CategoryReport contains the total numbers of tasks of the respective category as well as the * A CategoryReport contains the total numbers of tasks of the respective category as well as the

View File

@ -1,16 +1,15 @@
package pro.taskana.report.api; package pro.taskana.monitor.api.reports;
import java.util.List; import java.util.List;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.api.item.DetailedMonitorQueryItem; import pro.taskana.monitor.api.reports.item.DetailedMonitorQueryItem;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.report.api.row.DetailedClassificationRow; import pro.taskana.monitor.api.reports.row.DetailedClassificationRow;
import pro.taskana.report.api.row.FoldableRow; import pro.taskana.monitor.api.reports.row.FoldableRow;
import pro.taskana.report.api.structure.Report; import pro.taskana.monitor.api.reports.row.Row;
import pro.taskana.report.api.structure.Row;
/** /**
* The ClassificationReport extends the Report. The {@link Row}s of the ClassificationReport are * The ClassificationReport extends the Report. The {@link Row}s of the ClassificationReport are

View File

@ -1,12 +1,11 @@
package pro.taskana.report.api; package pro.taskana.monitor.api.reports;
import java.util.List; import java.util.List;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.report.api.structure.Report;
/** /**
* A CustomFieldValueReport contains the total numbers of tasks of the respective custom field as * A CustomFieldValueReport contains the total numbers of tasks of the respective custom field as

View File

@ -1,4 +1,4 @@
package pro.taskana.report.api.structure; package pro.taskana.monitor.api.reports;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
@ -8,7 +8,11 @@ import java.util.Set;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.row.SingleRow; import pro.taskana.monitor.api.reports.header.ColumnHeader;
import pro.taskana.monitor.api.reports.item.QueryItem;
import pro.taskana.monitor.api.reports.item.QueryItemPreprocessor;
import pro.taskana.monitor.api.reports.row.Row;
import pro.taskana.monitor.api.reports.row.SingleRow;
/** /**
* A Report represents an abstract table that consists of {@link Row}s and a list of * A Report represents an abstract table that consists of {@link Row}s and a list of

View File

@ -1,4 +1,4 @@
package pro.taskana.report.api; package pro.taskana.monitor.api.reports;
import java.util.List; import java.util.List;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -6,9 +6,8 @@ import java.util.stream.Stream;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.header.TaskStatusColumnHeader; import pro.taskana.monitor.api.reports.header.TaskStatusColumnHeader;
import pro.taskana.report.api.item.TaskQueryItem; import pro.taskana.monitor.api.reports.item.TaskQueryItem;
import pro.taskana.report.api.structure.Report;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
/** /**

View File

@ -1,14 +1,13 @@
package pro.taskana.report.api; package pro.taskana.monitor.api.reports;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.SelectedItem;
import pro.taskana.report.api.item.AgeQueryItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.api.structure.Report; import pro.taskana.monitor.api.reports.item.AgeQueryItem;
import pro.taskana.report.internal.SelectedItem;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;

View File

@ -1,13 +1,13 @@
package pro.taskana.report.api; package pro.taskana.monitor.api.reports;
import java.util.List; import java.util.List;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.api.item.TimestampQueryItem; import pro.taskana.monitor.api.reports.item.TimestampQueryItem;
import pro.taskana.report.api.row.TimestampRow; import pro.taskana.monitor.api.reports.row.TimestampRow;
import pro.taskana.report.api.structure.Report; import pro.taskana.task.api.Timestamp;
/** A {@link TimestampReport} displays created and competed tasks for a specific dates. */ /** A {@link TimestampReport} displays created and competed tasks for a specific dates. */
public class TimestampReport extends Report<TimestampQueryItem, TimeIntervalColumnHeader> { public class TimestampReport extends Report<TimestampQueryItem, TimeIntervalColumnHeader> {

View File

@ -1,13 +1,12 @@
package pro.taskana.report.api; package pro.taskana.monitor.api.reports;
import java.util.List; import java.util.List;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.CombinedClassificationFilter;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.api.structure.Report; import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.report.internal.CombinedClassificationFilter;
/** /**
* A WorkbasketReport contains the total numbers of tasks of the respective workbasket as well as * A WorkbasketReport contains the total numbers of tasks of the respective workbasket as well as

View File

@ -1,4 +1,7 @@
package pro.taskana.report.api.structure; package pro.taskana.monitor.api.reports.header;
import pro.taskana.monitor.api.reports.Report;
import pro.taskana.monitor.api.reports.item.QueryItem;
/** /**
* A ColumnHeader is an element of a {@link Report}. It determines weather a given &lt;Item&gt; * A ColumnHeader is an element of a {@link Report}. It determines weather a given &lt;Item&gt;

View File

@ -1,7 +1,6 @@
package pro.taskana.report.api.header; package pro.taskana.monitor.api.reports.header;
import pro.taskana.report.api.item.TaskQueryItem; import pro.taskana.monitor.api.reports.item.TaskQueryItem;
import pro.taskana.report.api.structure.ColumnHeader;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
/** The TaskStatusColumnHeader represents a column for each {@link TaskState}. */ /** The TaskStatusColumnHeader represents a column for each {@link TaskState}. */

View File

@ -1,12 +1,11 @@
package pro.taskana.report.api.header; package pro.taskana.monitor.api.reports.header;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.List; import java.util.List;
import java.util.Locale; import java.util.Locale;
import pro.taskana.report.api.item.AgeQueryItem; import pro.taskana.monitor.api.reports.item.AgeQueryItem;
import pro.taskana.report.api.structure.ColumnHeader;
/** /**
* A TimeIntervalColumnHeader has a lower and an upper age limit which subdivide the count of tasks * A TimeIntervalColumnHeader has a lower and an upper age limit which subdivide the count of tasks

View File

@ -1,6 +1,4 @@
package pro.taskana.report.api.item; package pro.taskana.monitor.api.reports.item;
import pro.taskana.report.api.structure.QueryItem;
/** /**
* The MonitorQueryItem entity contains the number of tasks for a key (e.g. workbasketKey) and age * The MonitorQueryItem entity contains the number of tasks for a key (e.g. workbasketKey) and age

View File

@ -1,4 +1,4 @@
package pro.taskana.report.api.item; package pro.taskana.monitor.api.reports.item;
/** /**
* The DetailedMonitorQueryItem extends the {@link MonitorQueryItem}. The additional attachment key * The DetailedMonitorQueryItem extends the {@link MonitorQueryItem}. The additional attachment key

View File

@ -1,4 +1,4 @@
package pro.taskana.report.api.item; package pro.taskana.monitor.api.reports.item;
/** /**
* The MonitorQueryItem entity contains the number of tasks for a key (e.g. workbasketKey) and age * The MonitorQueryItem entity contains the number of tasks for a key (e.g. workbasketKey) and age

View File

@ -1,4 +1,7 @@
package pro.taskana.report.api.structure; package pro.taskana.monitor.api.reports.item;
import pro.taskana.monitor.api.reports.Report;
import pro.taskana.monitor.api.reports.row.Row;
/** /**
* A QueryItem is en entity on which a {@link Report} is based on. Its value will be added to the * A QueryItem is en entity on which a {@link Report} is based on. Its value will be added to the

View File

@ -1,4 +1,6 @@
package pro.taskana.report.api.structure; package pro.taskana.monitor.api.reports.item;
import pro.taskana.monitor.api.reports.Report;
/** /**
* The QueryItemPreprocessor is used when adding {@link QueryItem}s into a {@link Report}. It * The QueryItemPreprocessor is used when adding {@link QueryItem}s into a {@link Report}. It

View File

@ -1,6 +1,5 @@
package pro.taskana.report.api.item; package pro.taskana.monitor.api.reports.item;
import pro.taskana.report.api.structure.QueryItem;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
/** /**

View File

@ -1,7 +1,7 @@
package pro.taskana.report.api.item; package pro.taskana.monitor.api.reports.item;
import pro.taskana.report.api.Timestamp; import pro.taskana.monitor.api.reports.TimestampReport;
import pro.taskana.report.api.TimestampReport; import pro.taskana.task.api.Timestamp;
/** The TimestampQueryItem contains the necessary information for the {@link TimestampReport}. */ /** The TimestampQueryItem contains the necessary information for the {@link TimestampReport}. */
public class TimestampQueryItem implements AgeQueryItem { public class TimestampQueryItem implements AgeQueryItem {

View File

@ -1,8 +1,7 @@
package pro.taskana.report.api.row; package pro.taskana.monitor.api.reports.row;
import pro.taskana.report.api.ClassificationReport; import pro.taskana.monitor.api.reports.ClassificationReport;
import pro.taskana.report.api.item.DetailedMonitorQueryItem; import pro.taskana.monitor.api.reports.item.DetailedMonitorQueryItem;
import pro.taskana.report.api.structure.Row;
/** /**
* Represents a single Row inside {@link ClassificationReport.DetailedClassificationReport}. The * Represents a single Row inside {@link ClassificationReport.DetailedClassificationReport}. The

View File

@ -1,4 +1,4 @@
package pro.taskana.report.api.row; package pro.taskana.monitor.api.reports.row;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.Map; import java.util.Map;
@ -6,9 +6,8 @@ import java.util.Set;
import java.util.function.Function; import java.util.function.Function;
import pro.taskana.common.api.LoggerUtils; import pro.taskana.common.api.LoggerUtils;
import pro.taskana.report.api.structure.QueryItem; import pro.taskana.monitor.api.reports.Report;
import pro.taskana.report.api.structure.Report; import pro.taskana.monitor.api.reports.item.QueryItem;
import pro.taskana.report.api.structure.Row;
/** /**
* The FoldableRow extends the {@link SingleRow}. In contrast to the {@link SingleRow} the * The FoldableRow extends the {@link SingleRow}. In contrast to the {@link SingleRow} the

View File

@ -1,4 +1,8 @@
package pro.taskana.report.api.structure; package pro.taskana.monitor.api.reports.row;
import pro.taskana.monitor.api.reports.Report;
import pro.taskana.monitor.api.reports.header.ColumnHeader;
import pro.taskana.monitor.api.reports.item.QueryItem;
/** /**
* Representation of a row in a {@link Report}. It contains an array of cells whose index * Representation of a row in a {@link Report}. It contains an array of cells whose index

View File

@ -1,9 +1,8 @@
package pro.taskana.report.api.row; package pro.taskana.monitor.api.reports.row;
import pro.taskana.report.api.structure.ColumnHeader; import pro.taskana.monitor.api.reports.Report;
import pro.taskana.report.api.structure.QueryItem; import pro.taskana.monitor.api.reports.header.ColumnHeader;
import pro.taskana.report.api.structure.Report; import pro.taskana.monitor.api.reports.item.QueryItem;
import pro.taskana.report.api.structure.Row;
/** /**
* A SingleRow represents a single row in a {@link Report}. It contains an array of cells whose * A SingleRow represents a single row in a {@link Report}. It contains an array of cells whose

View File

@ -1,8 +1,7 @@
package pro.taskana.report.api.row; package pro.taskana.monitor.api.reports.row;
import pro.taskana.report.api.TimestampReport; import pro.taskana.monitor.api.reports.TimestampReport;
import pro.taskana.report.api.item.TimestampQueryItem; import pro.taskana.monitor.api.reports.item.TimestampQueryItem;
import pro.taskana.report.api.structure.Row;
/** /**
* A single Row inside the {@link TimestampReport}. It contains 4 sub-rows for each org level * A single Row inside the {@link TimestampReport}. It contains 4 sub-rows for each org level

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -7,17 +7,19 @@ import org.apache.ibatis.annotations.Result;
import org.apache.ibatis.annotations.Results; import org.apache.ibatis.annotations.Results;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;
import pro.taskana.report.api.Timestamp; import pro.taskana.monitor.api.CombinedClassificationFilter;
import pro.taskana.report.api.item.DetailedMonitorQueryItem; import pro.taskana.monitor.api.SelectedItem;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.item.DetailedMonitorQueryItem;
import pro.taskana.report.api.item.TaskQueryItem; import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.report.api.item.TimestampQueryItem; import pro.taskana.monitor.api.reports.item.TaskQueryItem;
import pro.taskana.monitor.api.reports.item.TimestampQueryItem;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
import pro.taskana.task.api.Timestamp;
/** This class is the mybatis mapping of task monitoring. */ /** This class is the mybatis mapping of task monitoring. */
@SuppressWarnings({"checkstyle:LineLength", "checkstyle:Indentation"}) @SuppressWarnings({"checkstyle:LineLength", "checkstyle:Indentation"})
public interface TaskMonitorMapper { public interface MonitorMapper {
@Select( @Select(
"<script>" "<script>"

View File

@ -0,0 +1,63 @@
package pro.taskana.monitor.internal;
import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.monitor.api.MonitorService;
import pro.taskana.monitor.api.reports.CategoryReport;
import pro.taskana.monitor.api.reports.ClassificationReport;
import pro.taskana.monitor.api.reports.CustomFieldValueReport;
import pro.taskana.monitor.api.reports.TaskStatusReport;
import pro.taskana.monitor.api.reports.TimestampReport;
import pro.taskana.monitor.api.reports.WorkbasketReport;
import pro.taskana.monitor.internal.MonitorMapper;
import pro.taskana.monitor.internal.reports.CategoryReportBuilderImpl;
import pro.taskana.monitor.internal.reports.ClassificationReportBuilderImpl;
import pro.taskana.monitor.internal.reports.CustomFieldValueReportBuilderImpl;
import pro.taskana.monitor.internal.reports.TaskStatusReportBuilderImpl;
import pro.taskana.monitor.internal.reports.TimestampReportBuilderImpl;
import pro.taskana.monitor.internal.reports.WorkbasketReportBuilderImpl;
import pro.taskana.task.api.CustomField;
/** This is the implementation of TaskMonitorService. */
public class MonitorServiceImpl implements MonitorService {
private InternalTaskanaEngine taskanaEngine;
private MonitorMapper monitorMapper;
public MonitorServiceImpl(
InternalTaskanaEngine taskanaEngine, MonitorMapper monitorMapper) {
super();
this.taskanaEngine = taskanaEngine;
this.monitorMapper = monitorMapper;
}
@Override
public WorkbasketReport.Builder createWorkbasketReportBuilder() {
return new WorkbasketReportBuilderImpl(taskanaEngine, monitorMapper);
}
@Override
public CategoryReport.Builder createCategoryReportBuilder() {
return new CategoryReportBuilderImpl(taskanaEngine, monitorMapper);
}
@Override
public ClassificationReport.Builder createClassificationReportBuilder() {
return new ClassificationReportBuilderImpl(taskanaEngine, monitorMapper);
}
@Override
public CustomFieldValueReport.Builder createCustomFieldValueReportBuilder(
CustomField customField) {
return new CustomFieldValueReportBuilderImpl(taskanaEngine, monitorMapper, customField);
}
@Override
public TaskStatusReport.Builder createTaskStatusReportBuilder() {
return new TaskStatusReportBuilderImpl(taskanaEngine, monitorMapper);
}
@Override
public TimestampReport.Builder createTimestampReportBuilder() {
return new TimestampReportBuilderImpl(taskanaEngine, monitorMapper);
}
}

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal.preprocessor;
import java.time.Instant; import java.time.Instant;
import java.util.ArrayList; import java.util.ArrayList;
@ -9,7 +9,7 @@ import org.slf4j.LoggerFactory;
import pro.taskana.common.api.LoggerUtils; import pro.taskana.common.api.LoggerUtils;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.internal.util.DaysToWorkingDaysConverter; import pro.taskana.common.internal.util.DaysToWorkingDaysConverter;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
/** /**
* The DaysToWorkingDaysReportConverter provides a method to convert an age in days into an age in * The DaysToWorkingDaysReportConverter provides a method to convert an age in days into an age in

View File

@ -1,25 +1,24 @@
package pro.taskana.report.internal.preprocessor; package pro.taskana.monitor.internal.preprocessor;
import java.util.List; import java.util.List;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.internal.util.DaysToWorkingDaysConverter; import pro.taskana.common.internal.util.DaysToWorkingDaysConverter;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.api.item.AgeQueryItem; import pro.taskana.monitor.api.reports.item.AgeQueryItem;
import pro.taskana.report.api.structure.QueryItemPreprocessor; import pro.taskana.monitor.api.reports.item.QueryItemPreprocessor;
import pro.taskana.report.internal.DaysToWorkingDaysReportConverter;
/** /**
* Uses {@link DaysToWorkingDaysConverter} to convert an &lt;I&gt;s age to working days. * Uses {@link DaysToWorkingDaysConverter} to convert an &lt;I&gt;s age to working days.
* *
* @param <I> QueryItem which is being processed * @param <I> QueryItem which is being processed
*/ */
public class DaysToWorkingDaysPreProcessor<I extends AgeQueryItem> public class DaysToWorkingDaysReportPreProcessor<I extends AgeQueryItem>
implements QueryItemPreprocessor<I> { implements QueryItemPreprocessor<I> {
private DaysToWorkingDaysReportConverter instance; private DaysToWorkingDaysReportConverter instance;
public DaysToWorkingDaysPreProcessor( public DaysToWorkingDaysReportPreProcessor(
List<? extends TimeIntervalColumnHeader> columnHeaders, boolean activate) List<? extends TimeIntervalColumnHeader> columnHeaders, boolean activate)
throws InvalidArgumentException { throws InvalidArgumentException {
if (activate) { if (activate) {

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal.reports;
import java.util.List; import java.util.List;
import org.slf4j.Logger; import org.slf4j.Logger;
@ -7,23 +7,24 @@ import org.slf4j.LoggerFactory;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.common.internal.InternalTaskanaEngine; import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.report.api.CategoryReport; import pro.taskana.monitor.api.reports.CategoryReport;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.CategoryReport.Builder;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.internal.preprocessor.DaysToWorkingDaysPreProcessor; import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.monitor.internal.MonitorMapper;
import pro.taskana.monitor.internal.preprocessor.DaysToWorkingDaysReportPreProcessor;
import pro.taskana.task.api.TaskanaRole; import pro.taskana.task.api.TaskanaRole;
/** The implementation of CategoryReportBuilder. */ /** The implementation of CategoryReportBuilder. */
public class CategoryReportBuilderImpl public class CategoryReportBuilderImpl
extends TimeIntervalReportBuilderImpl< extends TimeIntervalReportBuilderImpl<Builder, MonitorQueryItem, TimeIntervalColumnHeader>
CategoryReport.Builder, MonitorQueryItem, TimeIntervalColumnHeader>
implements CategoryReport.Builder { implements CategoryReport.Builder {
private static final Logger LOGGER = LoggerFactory.getLogger(CategoryReport.Builder.class); private static final Logger LOGGER = LoggerFactory.getLogger(CategoryReport.Builder.class);
CategoryReportBuilderImpl( public CategoryReportBuilderImpl(
InternalTaskanaEngine taskanaEngine, TaskMonitorMapper taskMonitorMapper) { InternalTaskanaEngine taskanaEngine, MonitorMapper monitorMapper) {
super(taskanaEngine, taskMonitorMapper); super(taskanaEngine, monitorMapper);
} }
@Override @Override
@ -34,7 +35,7 @@ public class CategoryReportBuilderImpl
this.taskanaEngine.openConnection(); this.taskanaEngine.openConnection();
CategoryReport report = new CategoryReport(this.columnHeaders); CategoryReport report = new CategoryReport(this.columnHeaders);
List<MonitorQueryItem> monitorQueryItems = List<MonitorQueryItem> monitorQueryItems =
this.taskMonitorMapper.getTaskCountOfCategories( this.monitorMapper.getTaskCountOfCategories(
this.workbasketIds, this.workbasketIds,
this.states, this.states,
this.categories, this.categories,
@ -44,7 +45,7 @@ public class CategoryReportBuilderImpl
this.customAttributeFilter); this.customAttributeFilter);
report.addItems( report.addItems(
monitorQueryItems, monitorQueryItems,
new DaysToWorkingDaysPreProcessor<>(this.columnHeaders, this.inWorkingDays)); new DaysToWorkingDaysReportPreProcessor<>(this.columnHeaders, this.inWorkingDays));
return report; return report;
} finally { } finally {
this.taskanaEngine.returnConnection(); this.taskanaEngine.returnConnection();

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal.reports;
import java.util.List; import java.util.List;
import org.slf4j.Logger; import org.slf4j.Logger;
@ -7,25 +7,27 @@ import org.slf4j.LoggerFactory;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.common.internal.InternalTaskanaEngine; import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.report.api.ClassificationReport; import pro.taskana.monitor.api.reports.ClassificationReport;
import pro.taskana.report.api.ClassificationReport.DetailedClassificationReport; import pro.taskana.monitor.api.reports.ClassificationReport.Builder;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.ClassificationReport.DetailedClassificationReport;
import pro.taskana.report.api.item.DetailedMonitorQueryItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.item.DetailedMonitorQueryItem;
import pro.taskana.report.internal.preprocessor.DaysToWorkingDaysPreProcessor; import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.monitor.internal.MonitorMapper;
import pro.taskana.monitor.internal.preprocessor.DaysToWorkingDaysReportPreProcessor;
import pro.taskana.task.api.TaskanaRole; import pro.taskana.task.api.TaskanaRole;
/** The implementation of ClassificationReportBuilder. */ /** The implementation of ClassificationReportBuilder. */
public class ClassificationReportBuilderImpl public class ClassificationReportBuilderImpl
extends TimeIntervalReportBuilderImpl< extends TimeIntervalReportBuilderImpl<
ClassificationReport.Builder, MonitorQueryItem, TimeIntervalColumnHeader> Builder, MonitorQueryItem, TimeIntervalColumnHeader>
implements ClassificationReport.Builder { implements ClassificationReport.Builder {
private static final Logger LOGGER = LoggerFactory.getLogger(ClassificationReport.Builder.class); private static final Logger LOGGER = LoggerFactory.getLogger(ClassificationReport.Builder.class);
ClassificationReportBuilderImpl( public ClassificationReportBuilderImpl(
InternalTaskanaEngine taskanaEngine, TaskMonitorMapper taskMonitorMapper) { InternalTaskanaEngine taskanaEngine, MonitorMapper monitorMapper) {
super(taskanaEngine, taskMonitorMapper); super(taskanaEngine, monitorMapper);
} }
@Override @Override
@ -37,7 +39,7 @@ public class ClassificationReportBuilderImpl
this.taskanaEngine.openConnection(); this.taskanaEngine.openConnection();
ClassificationReport report = new ClassificationReport(this.columnHeaders); ClassificationReport report = new ClassificationReport(this.columnHeaders);
List<MonitorQueryItem> monitorQueryItems = List<MonitorQueryItem> monitorQueryItems =
this.taskMonitorMapper.getTaskCountOfClassifications( this.monitorMapper.getTaskCountOfClassifications(
this.workbasketIds, this.workbasketIds,
this.states, this.states,
this.categories, this.categories,
@ -47,7 +49,7 @@ public class ClassificationReportBuilderImpl
this.customAttributeFilter); this.customAttributeFilter);
report.addItems( report.addItems(
monitorQueryItems, monitorQueryItems,
new DaysToWorkingDaysPreProcessor<>(this.columnHeaders, this.inWorkingDays)); new DaysToWorkingDaysReportPreProcessor<>(this.columnHeaders, this.inWorkingDays));
return report; return report;
} finally { } finally {
this.taskanaEngine.returnConnection(); this.taskanaEngine.returnConnection();
@ -64,7 +66,7 @@ public class ClassificationReportBuilderImpl
this.taskanaEngine.openConnection(); this.taskanaEngine.openConnection();
DetailedClassificationReport report = new DetailedClassificationReport(this.columnHeaders); DetailedClassificationReport report = new DetailedClassificationReport(this.columnHeaders);
List<DetailedMonitorQueryItem> detailedMonitorQueryItems = List<DetailedMonitorQueryItem> detailedMonitorQueryItems =
this.taskMonitorMapper.getTaskCountOfDetailedClassifications( this.monitorMapper.getTaskCountOfDetailedClassifications(
this.workbasketIds, this.workbasketIds,
this.states, this.states,
this.categories, this.categories,
@ -75,7 +77,7 @@ public class ClassificationReportBuilderImpl
report.addItems( report.addItems(
detailedMonitorQueryItems, detailedMonitorQueryItems,
new DaysToWorkingDaysPreProcessor<>(this.columnHeaders, this.inWorkingDays)); new DaysToWorkingDaysReportPreProcessor<>(this.columnHeaders, this.inWorkingDays));
return report; return report;
} finally { } finally {

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal.reports;
import java.util.List; import java.util.List;
import org.slf4j.Logger; import org.slf4j.Logger;
@ -7,17 +7,19 @@ import org.slf4j.LoggerFactory;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.common.internal.InternalTaskanaEngine; import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.report.api.CustomFieldValueReport; import pro.taskana.monitor.api.reports.CustomFieldValueReport;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.CustomFieldValueReport.Builder;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.internal.preprocessor.DaysToWorkingDaysPreProcessor; import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.monitor.internal.MonitorMapper;
import pro.taskana.monitor.internal.preprocessor.DaysToWorkingDaysReportPreProcessor;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
import pro.taskana.task.api.TaskanaRole; import pro.taskana.task.api.TaskanaRole;
/** The implementation of CustomFieldValueReportBuilder. */ /** The implementation of CustomFieldValueReportBuilder. */
public class CustomFieldValueReportBuilderImpl public class CustomFieldValueReportBuilderImpl
extends TimeIntervalReportBuilderImpl< extends TimeIntervalReportBuilderImpl<
CustomFieldValueReport.Builder, MonitorQueryItem, TimeIntervalColumnHeader> Builder, MonitorQueryItem, TimeIntervalColumnHeader>
implements CustomFieldValueReport.Builder { implements CustomFieldValueReport.Builder {
private static final Logger LOGGER = private static final Logger LOGGER =
@ -25,11 +27,11 @@ public class CustomFieldValueReportBuilderImpl
private CustomField customField; private CustomField customField;
CustomFieldValueReportBuilderImpl( public CustomFieldValueReportBuilderImpl(
InternalTaskanaEngine taskanaEngine, InternalTaskanaEngine taskanaEngine,
TaskMonitorMapper taskMonitorMapper, MonitorMapper monitorMapper,
CustomField customField) { CustomField customField) {
super(taskanaEngine, taskMonitorMapper); super(taskanaEngine, monitorMapper);
this.customField = customField; this.customField = customField;
} }
@ -42,7 +44,7 @@ public class CustomFieldValueReportBuilderImpl
this.taskanaEngine.openConnection(); this.taskanaEngine.openConnection();
CustomFieldValueReport report = new CustomFieldValueReport(this.columnHeaders); CustomFieldValueReport report = new CustomFieldValueReport(this.columnHeaders);
List<MonitorQueryItem> monitorQueryItems = List<MonitorQueryItem> monitorQueryItems =
this.taskMonitorMapper.getTaskCountOfCustomFieldValues( this.monitorMapper.getTaskCountOfCustomFieldValues(
this.customField, this.customField,
this.workbasketIds, this.workbasketIds,
this.states, this.states,
@ -54,7 +56,7 @@ public class CustomFieldValueReportBuilderImpl
report.addItems( report.addItems(
monitorQueryItems, monitorQueryItems,
new DaysToWorkingDaysPreProcessor<>(this.columnHeaders, this.inWorkingDays)); new DaysToWorkingDaysReportPreProcessor<>(this.columnHeaders, this.inWorkingDays));
return report; return report;
} finally { } finally {
this.taskanaEngine.returnConnection(); this.taskanaEngine.returnConnection();

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal.reports;
import java.util.List; import java.util.List;
import org.slf4j.Logger; import org.slf4j.Logger;
@ -6,8 +6,9 @@ import org.slf4j.LoggerFactory;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.common.internal.InternalTaskanaEngine; import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.report.api.TaskStatusReport; import pro.taskana.monitor.api.reports.TaskStatusReport;
import pro.taskana.report.api.item.TaskQueryItem; import pro.taskana.monitor.api.reports.item.TaskQueryItem;
import pro.taskana.monitor.internal.MonitorMapper;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
import pro.taskana.task.api.TaskanaRole; import pro.taskana.task.api.TaskanaRole;
@ -16,14 +17,14 @@ public class TaskStatusReportBuilderImpl implements TaskStatusReport.Builder {
private static final Logger LOGGER = LoggerFactory.getLogger(TaskStatusReportBuilderImpl.class); private static final Logger LOGGER = LoggerFactory.getLogger(TaskStatusReportBuilderImpl.class);
private InternalTaskanaEngine taskanaEngine; private InternalTaskanaEngine taskanaEngine;
private TaskMonitorMapper taskMonitorMapper; private MonitorMapper monitorMapper;
private List<String> domains; private List<String> domains;
private List<TaskState> states; private List<TaskState> states;
TaskStatusReportBuilderImpl( public TaskStatusReportBuilderImpl(
InternalTaskanaEngine taskanaEngine, TaskMonitorMapper taskMonitorMapper) { InternalTaskanaEngine taskanaEngine, MonitorMapper monitorMapper) {
this.taskanaEngine = taskanaEngine; this.taskanaEngine = taskanaEngine;
this.taskMonitorMapper = taskMonitorMapper; this.monitorMapper = monitorMapper;
} }
@Override @Override
@ -33,7 +34,7 @@ public class TaskStatusReportBuilderImpl implements TaskStatusReport.Builder {
try { try {
this.taskanaEngine.openConnection(); this.taskanaEngine.openConnection();
List<TaskQueryItem> tasks = List<TaskQueryItem> tasks =
this.taskMonitorMapper.getTasksCountByState(this.domains, this.states); this.monitorMapper.getTasksCountByState(this.domains, this.states);
TaskStatusReport report = new TaskStatusReport(this.states); TaskStatusReport report = new TaskStatusReport(this.states);
report.addItems(tasks); report.addItems(tasks);
return report; return report;

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal.reports;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
@ -13,10 +13,13 @@ import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.common.internal.InternalTaskanaEngine; import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.common.internal.util.DaysToWorkingDaysConverter; import pro.taskana.common.internal.util.DaysToWorkingDaysConverter;
import pro.taskana.report.api.ClassificationReport; import pro.taskana.monitor.api.SelectedItem;
import pro.taskana.report.api.TimeIntervalReportBuilder; import pro.taskana.monitor.api.reports.ClassificationReport;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.TimeIntervalReportBuilder;
import pro.taskana.report.api.item.AgeQueryItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.monitor.api.reports.item.AgeQueryItem;
import pro.taskana.monitor.internal.MonitorMapper;
import pro.taskana.monitor.internal.preprocessor.DaysToWorkingDaysReportConverter;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
import pro.taskana.task.api.TaskanaRole; import pro.taskana.task.api.TaskanaRole;
@ -37,7 +40,7 @@ abstract class TimeIntervalReportBuilderImpl<
private static final Logger LOGGER = LoggerFactory.getLogger(TimeIntervalReportBuilder.class); private static final Logger LOGGER = LoggerFactory.getLogger(TimeIntervalReportBuilder.class);
protected InternalTaskanaEngine taskanaEngine; protected InternalTaskanaEngine taskanaEngine;
protected TaskMonitorMapper taskMonitorMapper; protected MonitorMapper monitorMapper;
protected List<H> columnHeaders; protected List<H> columnHeaders;
protected boolean inWorkingDays; protected boolean inWorkingDays;
protected List<String> workbasketIds; protected List<String> workbasketIds;
@ -49,9 +52,9 @@ abstract class TimeIntervalReportBuilderImpl<
protected Map<CustomField, String> customAttributeFilter; protected Map<CustomField, String> customAttributeFilter;
TimeIntervalReportBuilderImpl( TimeIntervalReportBuilderImpl(
InternalTaskanaEngine taskanaEngine, TaskMonitorMapper taskMonitorMapper) { InternalTaskanaEngine taskanaEngine, MonitorMapper monitorMapper) {
this.taskanaEngine = taskanaEngine; this.taskanaEngine = taskanaEngine;
this.taskMonitorMapper = taskMonitorMapper; this.monitorMapper = monitorMapper;
this.columnHeaders = Collections.emptyList(); this.columnHeaders = Collections.emptyList();
configureDaysToWorkingDaysConverter(); configureDaysToWorkingDaysConverter();
} }
@ -136,7 +139,7 @@ abstract class TimeIntervalReportBuilderImpl<
if (this.inWorkingDays) { if (this.inWorkingDays) {
selectedItems = convertWorkingDaysToDays(selectedItems, this.columnHeaders); selectedItems = convertWorkingDaysToDays(selectedItems, this.columnHeaders);
} }
return this.taskMonitorMapper.getTaskIdsForSelectedItems( return this.monitorMapper.getTaskIdsForSelectedItems(
this.workbasketIds, this.workbasketIds,
this.states, this.states,
this.categories, this.categories,
@ -163,7 +166,7 @@ abstract class TimeIntervalReportBuilderImpl<
this.taskanaEngine.getEngine().checkRoleMembership(TaskanaRole.MONITOR); this.taskanaEngine.getEngine().checkRoleMembership(TaskanaRole.MONITOR);
try { try {
this.taskanaEngine.openConnection(); this.taskanaEngine.openConnection();
return taskMonitorMapper.getCustomAttributeValuesForReport( return monitorMapper.getCustomAttributeValuesForReport(
this.workbasketIds, this.workbasketIds,
this.states, this.states,
this.categories, this.categories,

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal.reports;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
@ -11,26 +11,29 @@ import org.slf4j.LoggerFactory;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.common.internal.InternalTaskanaEngine; import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.report.api.Timestamp; import pro.taskana.monitor.api.SelectedItem;
import pro.taskana.report.api.TimestampReport; import pro.taskana.monitor.api.reports.TimestampReport;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.TimestampReport.Builder;
import pro.taskana.report.api.item.TimestampQueryItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.internal.preprocessor.DaysToWorkingDaysPreProcessor; import pro.taskana.monitor.api.reports.item.TimestampQueryItem;
import pro.taskana.monitor.internal.MonitorMapper;
import pro.taskana.monitor.internal.preprocessor.DaysToWorkingDaysReportPreProcessor;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
import pro.taskana.task.api.TaskanaRole; import pro.taskana.task.api.TaskanaRole;
import pro.taskana.task.api.Timestamp;
/** The implementation of {@link TimestampReport.Builder}. */ /** The implementation of {@link TimestampReport.Builder}. */
public class TimestampReportBuilderImpl public class TimestampReportBuilderImpl
extends TimeIntervalReportBuilderImpl< extends TimeIntervalReportBuilderImpl<
TimestampReport.Builder, TimestampQueryItem, TimeIntervalColumnHeader> Builder, TimestampQueryItem, TimeIntervalColumnHeader>
implements TimestampReport.Builder { implements TimestampReport.Builder {
private static final Logger LOGGER = LoggerFactory.getLogger(TimestampReport.Builder.class); private static final Logger LOGGER = LoggerFactory.getLogger(TimestampReport.Builder.class);
private List<Timestamp> status = Arrays.asList(Timestamp.CREATED, Timestamp.COMPLETED); private List<Timestamp> status = Arrays.asList(Timestamp.CREATED, Timestamp.COMPLETED);
TimestampReportBuilderImpl( public TimestampReportBuilderImpl(
InternalTaskanaEngine taskanaEngine, TaskMonitorMapper taskMonitorMapper) { InternalTaskanaEngine taskanaEngine, MonitorMapper monitorMapper) {
super(taskanaEngine, taskMonitorMapper); super(taskanaEngine, monitorMapper);
} }
@Override @Override
@ -79,7 +82,7 @@ public class TimestampReportBuilderImpl
.collect(Collectors.toList()); .collect(Collectors.toList());
report.addItems( report.addItems(
items, new DaysToWorkingDaysPreProcessor<>(this.columnHeaders, this.inWorkingDays)); items, new DaysToWorkingDaysReportPreProcessor<>(this.columnHeaders, this.inWorkingDays));
return report; return report;
} finally { } finally {
this.taskanaEngine.returnConnection(); this.taskanaEngine.returnConnection();
@ -88,7 +91,7 @@ public class TimestampReportBuilderImpl
} }
private List<TimestampQueryItem> getTasksCountForStatusGroupedByOrgLevel(Timestamp s) { private List<TimestampQueryItem> getTasksCountForStatusGroupedByOrgLevel(Timestamp s) {
return taskMonitorMapper.getTasksCountForStatusGroupedByOrgLevel( return monitorMapper.getTasksCountForStatusGroupedByOrgLevel(
s, s,
categories, categories,
classificationIds, classificationIds,

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal.reports;
import java.util.List; import java.util.List;
import org.slf4j.Logger; import org.slf4j.Logger;
@ -7,24 +7,27 @@ import org.slf4j.LoggerFactory;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.common.internal.InternalTaskanaEngine; import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.report.api.WorkbasketReport; import pro.taskana.monitor.api.CombinedClassificationFilter;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.WorkbasketReport;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.WorkbasketReport.Builder;
import pro.taskana.report.internal.preprocessor.DaysToWorkingDaysPreProcessor; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.monitor.internal.MonitorMapper;
import pro.taskana.monitor.internal.preprocessor.DaysToWorkingDaysReportPreProcessor;
import pro.taskana.task.api.TaskanaRole; import pro.taskana.task.api.TaskanaRole;
/** The implementation of WorkbasketReportBuilder. */ /** The implementation of WorkbasketReportBuilder. */
public class WorkbasketReportBuilderImpl public class WorkbasketReportBuilderImpl
extends TimeIntervalReportBuilderImpl< extends TimeIntervalReportBuilderImpl<
WorkbasketReport.Builder, MonitorQueryItem, TimeIntervalColumnHeader> Builder, MonitorQueryItem, TimeIntervalColumnHeader>
implements WorkbasketReport.Builder { implements WorkbasketReport.Builder {
private static final Logger LOGGER = LoggerFactory.getLogger(WorkbasketReportBuilderImpl.class); private static final Logger LOGGER = LoggerFactory.getLogger(WorkbasketReportBuilderImpl.class);
private List<CombinedClassificationFilter> combinedClassificationFilter; private List<CombinedClassificationFilter> combinedClassificationFilter;
WorkbasketReportBuilderImpl( public WorkbasketReportBuilderImpl(
InternalTaskanaEngine taskanaEngine, TaskMonitorMapper taskMonitorMapper) { InternalTaskanaEngine taskanaEngine, MonitorMapper monitorMapper) {
super(taskanaEngine, taskMonitorMapper); super(taskanaEngine, monitorMapper);
} }
@Override @Override
@ -35,7 +38,7 @@ public class WorkbasketReportBuilderImpl
this.taskanaEngine.openConnection(); this.taskanaEngine.openConnection();
WorkbasketReport report = new WorkbasketReport(this.columnHeaders); WorkbasketReport report = new WorkbasketReport(this.columnHeaders);
List<MonitorQueryItem> monitorQueryItems = List<MonitorQueryItem> monitorQueryItems =
this.taskMonitorMapper.getTaskCountOfWorkbaskets( this.monitorMapper.getTaskCountOfWorkbaskets(
this.workbasketIds, this.workbasketIds,
this.states, this.states,
this.categories, this.categories,
@ -46,7 +49,7 @@ public class WorkbasketReportBuilderImpl
this.combinedClassificationFilter); this.combinedClassificationFilter);
report.addItems( report.addItems(
monitorQueryItems, monitorQueryItems,
new DaysToWorkingDaysPreProcessor<>(this.columnHeaders, this.inWorkingDays)); new DaysToWorkingDaysReportPreProcessor<>(this.columnHeaders, this.inWorkingDays));
return report; return report;
} finally { } finally {
this.taskanaEngine.returnConnection(); this.taskanaEngine.returnConnection();
@ -63,7 +66,7 @@ public class WorkbasketReportBuilderImpl
this.taskanaEngine.openConnection(); this.taskanaEngine.openConnection();
WorkbasketReport report = new WorkbasketReport(this.columnHeaders); WorkbasketReport report = new WorkbasketReport(this.columnHeaders);
List<MonitorQueryItem> monitorQueryItems = List<MonitorQueryItem> monitorQueryItems =
this.taskMonitorMapper.getTaskCountOfWorkbasketsBasedOnPlannedDate( this.monitorMapper.getTaskCountOfWorkbasketsBasedOnPlannedDate(
this.workbasketIds, this.workbasketIds,
this.states, this.states,
this.categories, this.categories,
@ -74,7 +77,7 @@ public class WorkbasketReportBuilderImpl
this.combinedClassificationFilter); this.combinedClassificationFilter);
report.addItems( report.addItems(
monitorQueryItems, monitorQueryItems,
new DaysToWorkingDaysPreProcessor<>(this.columnHeaders, this.inWorkingDays)); new DaysToWorkingDaysReportPreProcessor<>(this.columnHeaders, this.inWorkingDays));
return report; return report;
} finally { } finally {
this.taskanaEngine.returnConnection(); this.taskanaEngine.returnConnection();

View File

@ -1,56 +0,0 @@
package pro.taskana.report.internal;
import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.report.api.CategoryReport;
import pro.taskana.report.api.ClassificationReport;
import pro.taskana.report.api.CustomFieldValueReport;
import pro.taskana.report.api.TaskMonitorService;
import pro.taskana.report.api.TaskStatusReport;
import pro.taskana.report.api.TimestampReport;
import pro.taskana.report.api.WorkbasketReport;
import pro.taskana.task.api.CustomField;
/** This is the implementation of TaskMonitorService. */
public class TaskMonitorServiceImpl implements TaskMonitorService {
private InternalTaskanaEngine taskanaEngine;
private TaskMonitorMapper taskMonitorMapper;
public TaskMonitorServiceImpl(
InternalTaskanaEngine taskanaEngine, TaskMonitorMapper taskMonitorMapper) {
super();
this.taskanaEngine = taskanaEngine;
this.taskMonitorMapper = taskMonitorMapper;
}
@Override
public WorkbasketReport.Builder createWorkbasketReportBuilder() {
return new WorkbasketReportBuilderImpl(taskanaEngine, taskMonitorMapper);
}
@Override
public CategoryReport.Builder createCategoryReportBuilder() {
return new CategoryReportBuilderImpl(taskanaEngine, taskMonitorMapper);
}
@Override
public ClassificationReport.Builder createClassificationReportBuilder() {
return new ClassificationReportBuilderImpl(taskanaEngine, taskMonitorMapper);
}
@Override
public CustomFieldValueReport.Builder createCustomFieldValueReportBuilder(
CustomField customField) {
return new CustomFieldValueReportBuilderImpl(taskanaEngine, taskMonitorMapper, customField);
}
@Override
public TaskStatusReport.Builder createTaskStatusReportBuilder() {
return new TaskStatusReportBuilderImpl(taskanaEngine, taskMonitorMapper);
}
@Override
public TimestampReport.Builder createTimestampReportBuilder() {
return new TimestampReportBuilderImpl(taskanaEngine, taskMonitorMapper);
}
}

View File

@ -1,6 +1,4 @@
package pro.taskana.report.api; package pro.taskana.task.api;
import pro.taskana.task.api.Task;
/** This enum contains all timestamps saved in the database table for a {@link Task}. */ /** This enum contains all timestamps saved in the database table for a {@link Task}. */
public enum Timestamp { public enum Timestamp {

View File

@ -14,7 +14,7 @@ import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith; import org.junit.jupiter.api.extension.ExtendWith;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.security.JaasExtension; import pro.taskana.security.JaasExtension;
import pro.taskana.security.WithAccessId; import pro.taskana.security.WithAccessId;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
@ -25,12 +25,12 @@ class GetCustomAttributeValuesForReportAccTest extends AbstractReportAccTest {
@Test @Test
void testRoleCheck() { void testRoleCheck() {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Assertions.assertThrows( Assertions.assertThrows(
NotAuthorizedException.class, NotAuthorizedException.class,
() -> () ->
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.listCustomAttributeValuesForCustomAttributeName(CustomField.CUSTOM_2)); .listCustomAttributeValuesForCustomAttributeName(CustomField.CUSTOM_2));
} }
@ -38,10 +38,10 @@ class GetCustomAttributeValuesForReportAccTest extends AbstractReportAccTest {
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testGetCustomAttributeValuesForOneWorkbasket() throws NotAuthorizedException { void testGetCustomAttributeValuesForOneWorkbasket() throws NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> values = List<String> values =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.workbasketIdIn(Collections.singletonList("WBI:000000000000000000000000000000000001")) .workbasketIdIn(Collections.singletonList("WBI:000000000000000000000000000000000001"))
.listCustomAttributeValuesForCustomAttributeName(CustomField.CUSTOM_2); .listCustomAttributeValuesForCustomAttributeName(CustomField.CUSTOM_2);
@ -55,10 +55,10 @@ class GetCustomAttributeValuesForReportAccTest extends AbstractReportAccTest {
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testGetCustomAttributeValuesForOneDomain() throws NotAuthorizedException { void testGetCustomAttributeValuesForOneDomain() throws NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> values = List<String> values =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.domainIn(Collections.singletonList("DOMAIN_A")) .domainIn(Collections.singletonList("DOMAIN_A"))
.listCustomAttributeValuesForCustomAttributeName(CustomField.CUSTOM_16); .listCustomAttributeValuesForCustomAttributeName(CustomField.CUSTOM_16);
@ -69,14 +69,14 @@ class GetCustomAttributeValuesForReportAccTest extends AbstractReportAccTest {
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testGetCustomAttributeValuesForCustomAttribute() throws NotAuthorizedException { void testGetCustomAttributeValuesForCustomAttribute() throws NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Map<CustomField, String> customAttributeFilter = new HashMap<>(); Map<CustomField, String> customAttributeFilter = new HashMap<>();
customAttributeFilter.put(CustomField.CUSTOM_2, "Vollkasko"); customAttributeFilter.put(CustomField.CUSTOM_2, "Vollkasko");
customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A"); customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A");
List<String> values = List<String> values =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.customAttributeFilterIn(customAttributeFilter) .customAttributeFilterIn(customAttributeFilter)
.listCustomAttributeValuesForCustomAttributeName(CustomField.CUSTOM_16); .listCustomAttributeValuesForCustomAttributeName(CustomField.CUSTOM_16);
@ -88,7 +88,7 @@ class GetCustomAttributeValuesForReportAccTest extends AbstractReportAccTest {
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testGetCustomAttributeValuesForExcludedClassifications() throws NotAuthorizedException { void testGetCustomAttributeValuesForExcludedClassifications() throws NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> domains = new ArrayList<>(); List<String> domains = new ArrayList<>();
domains.add("DOMAIN_A"); domains.add("DOMAIN_A");
@ -96,7 +96,7 @@ class GetCustomAttributeValuesForReportAccTest extends AbstractReportAccTest {
domains.add("DOMAIN_C"); domains.add("DOMAIN_C");
List<String> values = List<String> values =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.domainIn(domains) .domainIn(domains)
.excludedClassificationIdIn( .excludedClassificationIdIn(

View File

@ -15,9 +15,9 @@ import org.junit.jupiter.api.extension.ExtendWith;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.SelectedItem;
import pro.taskana.report.internal.SelectedItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.security.JaasExtension; import pro.taskana.security.JaasExtension;
import pro.taskana.security.WithAccessId; import pro.taskana.security.WithAccessId;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
@ -29,14 +29,14 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testRoleCheck() { void testRoleCheck() {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<SelectedItem> selectedItems = new ArrayList<>(); List<SelectedItem> selectedItems = new ArrayList<>();
Assertions.assertThrows( Assertions.assertThrows(
NotAuthorizedException.class, NotAuthorizedException.class,
() -> () ->
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.listTaskIdsForSelectedItems(selectedItems)); .listTaskIdsForSelectedItems(selectedItems));
} }
@ -44,7 +44,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testGetTaskIdsOfCategoryReport() throws InvalidArgumentException, NotAuthorizedException { void testGetTaskIdsOfCategoryReport() throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -69,7 +69,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -93,7 +93,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfCategoryReportWithWorkbasketFilter() void testGetTaskIdsOfCategoryReportWithWorkbasketFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<String> workbasketIds = final List<String> workbasketIds =
Collections.singletonList("WBI:000000000000000000000000000000000001"); Collections.singletonList("WBI:000000000000000000000000000000000001");
@ -120,7 +120,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -138,7 +138,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfCategoryReportWithStateFilter() void testGetTaskIdsOfCategoryReportWithStateFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<TaskState> states = Collections.singletonList(TaskState.READY); final List<TaskState> states = Collections.singletonList(TaskState.READY);
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -164,7 +164,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -189,7 +189,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfCategoryReportWithCategoryFilter() void testGetTaskIdsOfCategoryReportWithCategoryFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL"); final List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL");
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -209,7 +209,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
selectedItems.add(s2); selectedItems.add(s2);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -226,7 +226,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfCategoryReportWithDomainFilter() void testGetTaskIdsOfCategoryReportWithDomainFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<String> domains = Collections.singletonList("DOMAIN_A"); final List<String> domains = Collections.singletonList("DOMAIN_A");
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -252,7 +252,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -270,7 +270,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfCategoryReportWithCustomFieldValueFilter() void testGetTaskIdsOfCategoryReportWithCustomFieldValueFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Map<CustomField, String> customAttributeFilter = new HashMap<>(); Map<CustomField, String> customAttributeFilter = new HashMap<>();
customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A"); customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A");
@ -297,7 +297,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -315,7 +315,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testThrowsExceptionIfSubKeysAreUsed() { void testThrowsExceptionIfSubKeysAreUsed() {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -331,7 +331,7 @@ class GetTaskIdsOfCategoryReportAccTest extends AbstractReportAccTest {
Assertions.assertThrows( Assertions.assertThrows(
InvalidArgumentException.class, InvalidArgumentException.class,
() -> () ->
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.listTaskIdsForSelectedItems(selectedItems)); .listTaskIdsForSelectedItems(selectedItems));

View File

@ -11,9 +11,9 @@ import org.junit.jupiter.api.extension.ExtendWith;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.SelectedItem;
import pro.taskana.report.internal.SelectedItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.security.JaasExtension; import pro.taskana.security.JaasExtension;
import pro.taskana.security.WithAccessId; import pro.taskana.security.WithAccessId;
@ -23,7 +23,7 @@ class GetTaskIdsOfClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testRoleCheck() { void testRoleCheck() {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<SelectedItem> selectedItems = new ArrayList<>(); final List<SelectedItem> selectedItems = new ArrayList<>();
@ -48,7 +48,7 @@ class GetTaskIdsOfClassificationReportAccTest extends AbstractReportAccTest {
Assertions.assertThrows( Assertions.assertThrows(
NotAuthorizedException.class, NotAuthorizedException.class,
() -> () ->
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.listTaskIdsForSelectedItems(selectedItems)); .listTaskIdsForSelectedItems(selectedItems));
} }
@ -57,7 +57,7 @@ class GetTaskIdsOfClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfClassificationReport() void testGetTaskIdsOfClassificationReport()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -82,7 +82,7 @@ class GetTaskIdsOfClassificationReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -101,7 +101,7 @@ class GetTaskIdsOfClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfClassificationReportWithAttachments() void testGetTaskIdsOfClassificationReportWithAttachments()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -128,7 +128,7 @@ class GetTaskIdsOfClassificationReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -143,7 +143,7 @@ class GetTaskIdsOfClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfClassificationReportWithDomainFilter() void testGetTaskIdsOfClassificationReportWithDomainFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -172,7 +172,7 @@ class GetTaskIdsOfClassificationReportAccTest extends AbstractReportAccTest {
domains.add("DOMAIN_C"); domains.add("DOMAIN_C");
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()

View File

@ -15,9 +15,9 @@ import org.junit.jupiter.api.extension.ExtendWith;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.SelectedItem;
import pro.taskana.report.internal.SelectedItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.security.JaasExtension; import pro.taskana.security.JaasExtension;
import pro.taskana.security.WithAccessId; import pro.taskana.security.WithAccessId;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
@ -29,14 +29,14 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testRoleCheck() { void testRoleCheck() {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<SelectedItem> selectedItems = new ArrayList<>(); List<SelectedItem> selectedItems = new ArrayList<>();
Assertions.assertThrows( Assertions.assertThrows(
NotAuthorizedException.class, NotAuthorizedException.class,
() -> () ->
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.listTaskIdsForSelectedItems(selectedItems)); .listTaskIdsForSelectedItems(selectedItems));
} }
@ -45,7 +45,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfCustomFieldValueReport() void testGetTaskIdsOfCustomFieldValueReport()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -70,7 +70,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -91,7 +91,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfCustomFieldValueReportWithWorkbasketFilter() void testGetTaskIdsOfCustomFieldValueReportWithWorkbasketFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<String> workbasketIds = final List<String> workbasketIds =
Collections.singletonList("WBI:000000000000000000000000000000000001"); Collections.singletonList("WBI:000000000000000000000000000000000001");
@ -118,7 +118,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -135,7 +135,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfCustomFieldValueReportWithStateFilter() void testGetTaskIdsOfCustomFieldValueReportWithStateFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -160,7 +160,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -182,7 +182,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfCustomFieldValueReportWithCategoryFilter() void testGetTaskIdsOfCustomFieldValueReportWithCategoryFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL"); final List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL");
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -208,7 +208,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -225,7 +225,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfCustomFieldValueReportWithDomainFilter() void testGetTaskIdsOfCustomFieldValueReportWithDomainFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -250,7 +250,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -267,7 +267,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfCustomFieldValueReportWithCustomFieldValueFilter() void testGetTaskIdsOfCustomFieldValueReportWithCustomFieldValueFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final Map<CustomField, String> customAttributeFilter = new HashMap<>(); final Map<CustomField, String> customAttributeFilter = new HashMap<>();
customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A"); customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A");
@ -294,7 +294,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -311,7 +311,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testThrowsExceptionIfSubKeysAreUsed() { void testThrowsExceptionIfSubKeysAreUsed() {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -327,7 +327,7 @@ class GetTaskIdsOfCustomFieldValueReportAccTest extends AbstractReportAccTest {
Assertions.assertThrows( Assertions.assertThrows(
InvalidArgumentException.class, InvalidArgumentException.class,
() -> () ->
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.listTaskIdsForSelectedItems(selectedItems)); .listTaskIdsForSelectedItems(selectedItems));

View File

@ -12,9 +12,9 @@ import org.junit.jupiter.api.extension.ExtendWith;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.SelectedItem;
import pro.taskana.report.internal.SelectedItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.security.JaasExtension; import pro.taskana.security.JaasExtension;
import pro.taskana.security.WithAccessId; import pro.taskana.security.WithAccessId;
@ -24,14 +24,14 @@ class GetTaskIdsOfWorkbasketReportAccTest extends AbstractReportAccTest {
@Test @Test
void testRoleCheck() { void testRoleCheck() {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<SelectedItem> selectedItems = new ArrayList<>(); List<SelectedItem> selectedItems = new ArrayList<>();
Assertions.assertThrows( Assertions.assertThrows(
NotAuthorizedException.class, NotAuthorizedException.class,
() -> () ->
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.listTaskIdsForSelectedItems(selectedItems)); .listTaskIdsForSelectedItems(selectedItems));
} }
@ -39,7 +39,7 @@ class GetTaskIdsOfWorkbasketReportAccTest extends AbstractReportAccTest {
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testGetTaskIdsOfWorkbasketReport() throws InvalidArgumentException, NotAuthorizedException { void testGetTaskIdsOfWorkbasketReport() throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -64,7 +64,7 @@ class GetTaskIdsOfWorkbasketReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -84,7 +84,7 @@ class GetTaskIdsOfWorkbasketReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTaskIdsOfWorkbasketReportWithExcludedClassifications() void testGetTaskIdsOfWorkbasketReportWithExcludedClassifications()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
final TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); final MonitorService monitorService = taskanaEngine.getTaskMonitorService();
final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); final List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
@ -109,7 +109,7 @@ class GetTaskIdsOfWorkbasketReportAccTest extends AbstractReportAccTest {
selectedItems.add(s3); selectedItems.add(s3);
List<String> ids = List<String> ids =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()

View File

@ -19,9 +19,9 @@ import org.slf4j.LoggerFactory;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.CategoryReport; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.reports.CategoryReport;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.security.JaasExtension; import pro.taskana.security.JaasExtension;
import pro.taskana.security.WithAccessId; import pro.taskana.security.WithAccessId;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
@ -35,20 +35,20 @@ class ProvideCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testRoleCheck() { void testRoleCheck() {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Assertions.assertThrows( Assertions.assertThrows(
NotAuthorizedException.class, NotAuthorizedException.class,
() -> taskMonitorService.createCategoryReportBuilder().buildReport()); () -> monitorService.createCategoryReportBuilder().buildReport());
} }
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testGetTotalNumbersOfTasksOfCategoryReport() void testGetTotalNumbersOfTasksOfCategoryReport()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
CategoryReport report = taskMonitorService.createCategoryReportBuilder().buildReport(); CategoryReport report = monitorService.createCategoryReportBuilder().buildReport();
if (LOGGER.isDebugEnabled()) { if (LOGGER.isDebugEnabled()) {
LOGGER.debug(reportToString(report)); LOGGER.debug(reportToString(report));
@ -70,12 +70,12 @@ class ProvideCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetCategoryReportWithReportLineItemDefinitions() void testGetCategoryReportWithReportLineItemDefinitions()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
CategoryReport report = CategoryReport report =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -103,12 +103,12 @@ class ProvideCategoryReportAccTest extends AbstractReportAccTest {
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testEachItemOfCategoryReport() throws InvalidArgumentException, NotAuthorizedException { void testEachItemOfCategoryReport() throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CategoryReport report = CategoryReport report =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -135,12 +135,12 @@ class ProvideCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfCategoryReportNotInWorkingDays() void testEachItemOfCategoryReportNotInWorkingDays()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CategoryReport report = CategoryReport report =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.buildReport(); .buildReport();
@ -166,14 +166,14 @@ class ProvideCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfCategoryReportWithWorkbasketFilter() void testEachItemOfCategoryReportWithWorkbasketFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> workbasketIds = List<String> workbasketIds =
Collections.singletonList("WBI:000000000000000000000000000000000001"); Collections.singletonList("WBI:000000000000000000000000000000000001");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CategoryReport report = CategoryReport report =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -201,13 +201,13 @@ class ProvideCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfCategoryReportWithStateFilter() void testEachItemOfCategoryReportWithStateFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TaskState> states = Collections.singletonList(TaskState.READY); List<TaskState> states = Collections.singletonList(TaskState.READY);
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CategoryReport report = CategoryReport report =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.stateIn(states) .stateIn(states)
@ -235,13 +235,13 @@ class ProvideCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfCategoryReportWithCategoryFilter() void testEachItemOfCategoryReportWithCategoryFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL"); List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CategoryReport report = CategoryReport report =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.categoryIn(categories) .categoryIn(categories)
@ -266,13 +266,13 @@ class ProvideCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfCategoryReportWithDomainFilter() void testEachItemOfCategoryReportWithDomainFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> domains = Collections.singletonList("DOMAIN_A"); List<String> domains = Collections.singletonList("DOMAIN_A");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CategoryReport report = CategoryReport report =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.domainIn(domains) .domainIn(domains)
@ -300,14 +300,14 @@ class ProvideCategoryReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfCategoryReportWithCustomFieldValueFilter() void testEachItemOfCategoryReportWithCustomFieldValueFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Map<CustomField, String> customAttributeFilter = new HashMap<>(); Map<CustomField, String> customAttributeFilter = new HashMap<>();
customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A"); customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CategoryReport report = CategoryReport report =
taskMonitorService monitorService
.createCategoryReportBuilder() .createCategoryReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.customAttributeFilterIn(customAttributeFilter) .customAttributeFilterIn(customAttributeFilter)

View File

@ -19,9 +19,9 @@ import org.slf4j.LoggerFactory;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.ClassificationReport; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.reports.ClassificationReport;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.security.JaasExtension; import pro.taskana.security.JaasExtension;
import pro.taskana.security.WithAccessId; import pro.taskana.security.WithAccessId;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
@ -36,21 +36,21 @@ class ProvideClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testRoleCheck() throws InvalidArgumentException, NotAuthorizedException { void testRoleCheck() throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Assertions.assertThrows( Assertions.assertThrows(
NotAuthorizedException.class, NotAuthorizedException.class,
() -> taskMonitorService.createClassificationReportBuilder().buildReport()); () -> monitorService.createClassificationReportBuilder().buildReport());
} }
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testGetTotalNumbersOfTasksOfClassificationReport() void testGetTotalNumbersOfTasksOfClassificationReport()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
ClassificationReport report = ClassificationReport report =
taskMonitorService.createClassificationReportBuilder().buildReport(); monitorService.createClassificationReportBuilder().buildReport();
if (LOGGER.isDebugEnabled()) { if (LOGGER.isDebugEnabled()) {
LOGGER.debug(reportToString(report)); LOGGER.debug(reportToString(report));
@ -76,12 +76,12 @@ class ProvideClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetClassificationReportWithReportLineItemDefinitions() void testGetClassificationReportWithReportLineItemDefinitions()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnsHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnsHeaders();
ClassificationReport report = ClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -119,12 +119,12 @@ class ProvideClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfClassificationReport() void testEachItemOfClassificationReport()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
ClassificationReport report = ClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -157,12 +157,12 @@ class ProvideClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfClassificationReportNotInWorkingDays() void testEachItemOfClassificationReportNotInWorkingDays()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
ClassificationReport report = ClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.buildReport(); .buildReport();
@ -194,14 +194,14 @@ class ProvideClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfClassificationReportWithWorkbasketFilter() void testEachItemOfClassificationReportWithWorkbasketFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> workbasketIds = List<String> workbasketIds =
Collections.singletonList("WBI:000000000000000000000000000000000001"); Collections.singletonList("WBI:000000000000000000000000000000000001");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
ClassificationReport report = ClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.workbasketIdIn(workbasketIds) .workbasketIdIn(workbasketIds)
@ -235,13 +235,13 @@ class ProvideClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfClassificationReportWithStateFilter() void testEachItemOfClassificationReportWithStateFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TaskState> states = Collections.singletonList(TaskState.READY); List<TaskState> states = Collections.singletonList(TaskState.READY);
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
ClassificationReport report = ClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.stateIn(states) .stateIn(states)
@ -275,13 +275,13 @@ class ProvideClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfClassificationReportWithCategoryFilter() void testEachItemOfClassificationReportWithCategoryFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL"); List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
ClassificationReport report = ClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.categoryIn(categories) .categoryIn(categories)
@ -306,13 +306,13 @@ class ProvideClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfClassificationReportWithDomainFilter() void testEachItemOfClassificationReportWithDomainFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> domains = Collections.singletonList("DOMAIN_A"); List<String> domains = Collections.singletonList("DOMAIN_A");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
ClassificationReport report = ClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.domainIn(domains) .domainIn(domains)
@ -346,14 +346,14 @@ class ProvideClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfClassificationReportWithCustomFieldValueFilter() void testEachItemOfClassificationReportWithCustomFieldValueFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Map<CustomField, String> customAttributeFilter = new HashMap<>(); Map<CustomField, String> customAttributeFilter = new HashMap<>();
customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A"); customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
ClassificationReport report = ClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.customAttributeFilterIn(customAttributeFilter) .customAttributeFilterIn(customAttributeFilter)

View File

@ -18,9 +18,9 @@ import org.slf4j.LoggerFactory;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.CustomFieldValueReport; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.reports.CustomFieldValueReport;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.security.JaasExtension; import pro.taskana.security.JaasExtension;
import pro.taskana.security.WithAccessId; import pro.taskana.security.WithAccessId;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
@ -35,12 +35,12 @@ class ProvideCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testRoleCheck() { void testRoleCheck() {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Assertions.assertThrows( Assertions.assertThrows(
NotAuthorizedException.class, NotAuthorizedException.class,
() -> () ->
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.buildReport()); .buildReport());
} }
@ -49,10 +49,12 @@ class ProvideCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTotalNumbersOfTasksOfCustomFieldValueReportForCustom1() void testGetTotalNumbersOfTasksOfCustomFieldValueReportForCustom1()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
CustomFieldValueReport report = CustomFieldValueReport report =
taskMonitorService.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1).buildReport(); monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.buildReport();
if (LOGGER.isDebugEnabled()) { if (LOGGER.isDebugEnabled()) {
LOGGER.debug(reportToString(report)); LOGGER.debug(reportToString(report));
@ -75,10 +77,12 @@ class ProvideCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTotalNumbersOfTasksOfCustomFieldValueReportForCustom2() void testGetTotalNumbersOfTasksOfCustomFieldValueReportForCustom2()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
CustomFieldValueReport report = CustomFieldValueReport report =
taskMonitorService.createCustomFieldValueReportBuilder(CustomField.CUSTOM_2).buildReport(); monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_2)
.buildReport();
if (LOGGER.isDebugEnabled()) { if (LOGGER.isDebugEnabled()) {
LOGGER.debug(reportToString(report)); LOGGER.debug(reportToString(report));
@ -100,13 +104,13 @@ class ProvideCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetCustomFieldValueReportWithReportLineItemDefinitions() void testGetCustomFieldValueReportWithReportLineItemDefinitions()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
CustomField customField = CustomField.CUSTOM_1; CustomField customField = CustomField.CUSTOM_1;
List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
CustomFieldValueReport report = CustomFieldValueReport report =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(customField) .createCustomFieldValueReportBuilder(customField)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -132,12 +136,12 @@ class ProvideCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfCustomFieldValueReport() void testEachItemOfCustomFieldValueReport()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CustomFieldValueReport report = CustomFieldValueReport report =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -164,12 +168,12 @@ class ProvideCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfCustomFieldValueReportNotInWorkingDays() void testEachItemOfCustomFieldValueReportNotInWorkingDays()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CustomFieldValueReport report = CustomFieldValueReport report =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.buildReport(); .buildReport();
@ -195,14 +199,14 @@ class ProvideCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfCustomFieldValueReportWithWorkbasketFilter() void testEachItemOfCustomFieldValueReportWithWorkbasketFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> workbasketIds = List<String> workbasketIds =
Collections.singletonList("WBI:000000000000000000000000000000000001"); Collections.singletonList("WBI:000000000000000000000000000000000001");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CustomFieldValueReport report = CustomFieldValueReport report =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -230,13 +234,13 @@ class ProvideCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfCustomFieldValueReportWithStateFilter() void testEachItemOfCustomFieldValueReportWithStateFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TaskState> states = Collections.singletonList(TaskState.READY); List<TaskState> states = Collections.singletonList(TaskState.READY);
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CustomFieldValueReport report = CustomFieldValueReport report =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -264,13 +268,13 @@ class ProvideCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfCustomFieldValueReportWithCategoryFilter() void testEachItemOfCustomFieldValueReportWithCategoryFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL"); List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CustomFieldValueReport report = CustomFieldValueReport report =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -298,13 +302,13 @@ class ProvideCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfCustomFieldValueReportWithDomainFilter() void testEachItemOfCustomFieldValueReportWithDomainFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> domains = Collections.singletonList("DOMAIN_A"); List<String> domains = Collections.singletonList("DOMAIN_A");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CustomFieldValueReport report = CustomFieldValueReport report =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -332,14 +336,14 @@ class ProvideCustomFieldValueReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfCustomFieldValueReportWithCustomFieldValueFilter() void testEachItemOfCustomFieldValueReportWithCustomFieldValueFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Map<CustomField, String> customAttributeFilter = new HashMap<>(); Map<CustomField, String> customAttributeFilter = new HashMap<>();
customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A"); customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
CustomFieldValueReport report = CustomFieldValueReport report =
taskMonitorService monitorService
.createCustomFieldValueReportBuilder(CustomField.CUSTOM_1) .createCustomFieldValueReportBuilder(CustomField.CUSTOM_1)
.customAttributeFilterIn(customAttributeFilter) .customAttributeFilterIn(customAttributeFilter)
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)

View File

@ -18,12 +18,12 @@ import org.slf4j.LoggerFactory;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.ClassificationReport.DetailedClassificationReport; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.reports.ClassificationReport.DetailedClassificationReport;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.api.item.DetailedMonitorQueryItem; import pro.taskana.monitor.api.reports.item.DetailedMonitorQueryItem;
import pro.taskana.report.api.row.FoldableRow; import pro.taskana.monitor.api.reports.row.FoldableRow;
import pro.taskana.report.api.structure.Row; import pro.taskana.monitor.api.reports.row.Row;
import pro.taskana.security.JaasExtension; import pro.taskana.security.JaasExtension;
import pro.taskana.security.WithAccessId; import pro.taskana.security.WithAccessId;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
@ -38,21 +38,21 @@ class ProvideDetailedClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testRoleCheck() { void testRoleCheck() {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Assertions.assertThrows( Assertions.assertThrows(
NotAuthorizedException.class, NotAuthorizedException.class,
() -> taskMonitorService.createClassificationReportBuilder().buildDetailedReport()); () -> monitorService.createClassificationReportBuilder().buildDetailedReport());
} }
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testGetTotalNumbersOfTasksOfDetailedClassificationReport() void testGetTotalNumbersOfTasksOfDetailedClassificationReport()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
DetailedClassificationReport report = DetailedClassificationReport report =
taskMonitorService.createClassificationReportBuilder().buildDetailedReport(); monitorService.createClassificationReportBuilder().buildDetailedReport();
if (LOGGER.isDebugEnabled()) { if (LOGGER.isDebugEnabled()) {
LOGGER.debug(reportToString(report)); LOGGER.debug(reportToString(report));
@ -102,12 +102,12 @@ class ProvideDetailedClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetDetailedClassificationReportWithReportLineItemDefinitions() void testGetDetailedClassificationReportWithReportLineItemDefinitions()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
DetailedClassificationReport report = DetailedClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.inWorkingDays() .inWorkingDays()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
@ -135,12 +135,12 @@ class ProvideDetailedClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfDetailedClassificationReport() void testEachItemOfDetailedClassificationReport()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
DetailedClassificationReport report = DetailedClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.inWorkingDays() .inWorkingDays()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
@ -200,14 +200,14 @@ class ProvideDetailedClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfDetailedClassificationReportWithWorkbasketFilter() void testEachItemOfDetailedClassificationReportWithWorkbasketFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> workbasketIds = List<String> workbasketIds =
Collections.singletonList("WBI:000000000000000000000000000000000001"); Collections.singletonList("WBI:000000000000000000000000000000000001");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
DetailedClassificationReport report = DetailedClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.workbasketIdIn(workbasketIds) .workbasketIdIn(workbasketIds)
.inWorkingDays() .inWorkingDays()
@ -265,13 +265,13 @@ class ProvideDetailedClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfDetailedClassificationReportWithStateFilter() void testEachItemOfDetailedClassificationReportWithStateFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TaskState> states = Collections.singletonList(TaskState.READY); List<TaskState> states = Collections.singletonList(TaskState.READY);
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
DetailedClassificationReport report = DetailedClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.stateIn(states) .stateIn(states)
.inWorkingDays() .inWorkingDays()
@ -329,12 +329,12 @@ class ProvideDetailedClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfDetailedClassificationReportNotInWorkingDays() void testEachItemOfDetailedClassificationReportNotInWorkingDays()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
DetailedClassificationReport report = DetailedClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.buildDetailedReport(); .buildDetailedReport();
@ -393,13 +393,13 @@ class ProvideDetailedClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfDetailedClassificationReportWithCategoryFilter() void testEachItemOfDetailedClassificationReportWithCategoryFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL"); List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
DetailedClassificationReport report = DetailedClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.categoryIn(categories) .categoryIn(categories)
.inWorkingDays() .inWorkingDays()
@ -436,13 +436,13 @@ class ProvideDetailedClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfDetailedClassificationReportWithDomainFilter() void testEachItemOfDetailedClassificationReportWithDomainFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> domains = Collections.singletonList("DOMAIN_A"); List<String> domains = Collections.singletonList("DOMAIN_A");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
DetailedClassificationReport report = DetailedClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.inWorkingDays() .inWorkingDays()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
@ -500,14 +500,14 @@ class ProvideDetailedClassificationReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfDetailedClassificationReportWithCustomFieldValueFilter() void testEachItemOfDetailedClassificationReportWithCustomFieldValueFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Map<CustomField, String> customAttributeFilter = new HashMap<>(); Map<CustomField, String> customAttributeFilter = new HashMap<>();
customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A"); customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
DetailedClassificationReport report = DetailedClassificationReport report =
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.customAttributeFilterIn(customAttributeFilter) .customAttributeFilterIn(customAttributeFilter)
.inWorkingDays() .inWorkingDays()

View File

@ -15,11 +15,11 @@ import org.slf4j.LoggerFactory;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.report.api.TaskStatusReport; import pro.taskana.monitor.api.reports.TaskStatusReport;
import pro.taskana.report.api.header.TaskStatusColumnHeader; import pro.taskana.monitor.api.reports.header.TaskStatusColumnHeader;
import pro.taskana.report.api.item.TaskQueryItem; import pro.taskana.monitor.api.reports.item.TaskQueryItem;
import pro.taskana.report.api.structure.Row; import pro.taskana.monitor.api.reports.row.Row;
import pro.taskana.security.JaasExtension; import pro.taskana.security.JaasExtension;
import pro.taskana.security.WithAccessId; import pro.taskana.security.WithAccessId;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
@ -33,19 +33,19 @@ class ProvideTaskStatusReportAccTest extends AbstractReportAccTest {
@Test @Test
void testRoleCheck() { void testRoleCheck() {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Assertions.assertThrows( Assertions.assertThrows(
NotAuthorizedException.class, NotAuthorizedException.class,
() -> taskMonitorService.createTaskStatusReportBuilder().buildReport()); () -> monitorService.createTaskStatusReportBuilder().buildReport());
} }
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testCompleteTaskStatusReport() throws NotAuthorizedException, InvalidArgumentException { void testCompleteTaskStatusReport() throws NotAuthorizedException, InvalidArgumentException {
// given // given
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
// when // when
TaskStatusReport report = taskMonitorService.createTaskStatusReportBuilder().buildReport(); TaskStatusReport report = monitorService.createTaskStatusReportBuilder().buildReport();
// then // then
if (LOGGER.isDebugEnabled()) { if (LOGGER.isDebugEnabled()) {
LOGGER.debug(reportToString(report)); LOGGER.debug(reportToString(report));
@ -74,8 +74,8 @@ class ProvideTaskStatusReportAccTest extends AbstractReportAccTest {
@Test @Test
void testCompleteTaskStatusReportAsAdmin() void testCompleteTaskStatusReportAsAdmin()
throws NotAuthorizedException, InvalidArgumentException { throws NotAuthorizedException, InvalidArgumentException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
taskMonitorService.createTaskStatusReportBuilder().buildReport(); monitorService.createTaskStatusReportBuilder().buildReport();
} }
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@ -83,10 +83,10 @@ class ProvideTaskStatusReportAccTest extends AbstractReportAccTest {
void testCompleteTaskStatusReportWithDomainFilter() void testCompleteTaskStatusReportWithDomainFilter()
throws NotAuthorizedException, InvalidArgumentException { throws NotAuthorizedException, InvalidArgumentException {
// given // given
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
// when // when
TaskStatusReport report = TaskStatusReport report =
taskMonitorService monitorService
.createTaskStatusReportBuilder() .createTaskStatusReportBuilder()
.domainIn(asList("DOMAIN_C", "DOMAIN_A")) .domainIn(asList("DOMAIN_C", "DOMAIN_A"))
.buildReport(); .buildReport();
@ -115,10 +115,10 @@ class ProvideTaskStatusReportAccTest extends AbstractReportAccTest {
void testCompleteTaskStatusReportWithStateFilter() void testCompleteTaskStatusReportWithStateFilter()
throws NotAuthorizedException, InvalidArgumentException { throws NotAuthorizedException, InvalidArgumentException {
// given // given
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
// when // when
TaskStatusReport report = TaskStatusReport report =
taskMonitorService monitorService
.createTaskStatusReportBuilder() .createTaskStatusReportBuilder()
.stateIn(Collections.singletonList(TaskState.READY)) .stateIn(Collections.singletonList(TaskState.READY))
.buildReport(); .buildReport();

View File

@ -12,12 +12,12 @@ import java.util.stream.IntStream;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith; import org.junit.jupiter.api.extension.ExtendWith;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.report.api.TimestampReport; import pro.taskana.monitor.api.reports.TimestampReport;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.api.item.TimestampQueryItem; import pro.taskana.monitor.api.reports.item.TimestampQueryItem;
import pro.taskana.report.api.row.SingleRow; import pro.taskana.monitor.api.reports.row.SingleRow;
import pro.taskana.report.api.row.TimestampRow; import pro.taskana.monitor.api.reports.row.TimestampRow;
import pro.taskana.security.JaasExtension; import pro.taskana.security.JaasExtension;
import pro.taskana.security.WithAccessId; import pro.taskana.security.WithAccessId;
@ -36,7 +36,7 @@ class ProvideTimestampReportAccTest extends AbstractReportAccTest {
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testProperInsertionOfQueryItems() throws Exception { void testProperInsertionOfQueryItems() throws Exception {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
// last 14 days. Today excluded. // last 14 days. Today excluded.
List<TimeIntervalColumnHeader> headers = List<TimeIntervalColumnHeader> headers =
@ -44,7 +44,10 @@ class ProvideTimestampReportAccTest extends AbstractReportAccTest {
.mapToObj(TimeIntervalColumnHeader.Date::new) .mapToObj(TimeIntervalColumnHeader.Date::new)
.collect(Collectors.toList()); .collect(Collectors.toList());
TimestampReport timestampReport = TimestampReport timestampReport =
taskMonitorService.createTimestampReportBuilder().withColumnHeaders(headers).buildReport(); monitorService
.createTimestampReportBuilder()
.withColumnHeaders(headers)
.buildReport();
final HashSet<String> org1Set = new HashSet<>(Arrays.asList("N/A", "org1")); final HashSet<String> org1Set = new HashSet<>(Arrays.asList("N/A", "org1"));
final HashSet<String> allOtherOrgLevelSet = new HashSet<>(Collections.singletonList("N/A")); final HashSet<String> allOtherOrgLevelSet = new HashSet<>(Collections.singletonList("N/A"));

View File

@ -19,10 +19,10 @@ import org.slf4j.LoggerFactory;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.CombinedClassificationFilter;
import pro.taskana.report.api.WorkbasketReport; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.WorkbasketReport;
import pro.taskana.report.internal.CombinedClassificationFilter; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.security.JaasExtension; import pro.taskana.security.JaasExtension;
import pro.taskana.security.WithAccessId; import pro.taskana.security.WithAccessId;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
@ -37,20 +37,20 @@ class ProvideWorkbasketReportAccTest extends AbstractReportAccTest {
@Test @Test
void testRoleCheck() { void testRoleCheck() {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Assertions.assertThrows( Assertions.assertThrows(
NotAuthorizedException.class, NotAuthorizedException.class,
() -> taskMonitorService.createWorkbasketReportBuilder().buildReport()); () -> monitorService.createWorkbasketReportBuilder().buildReport());
} }
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testGetTotalNumbersOfTasksOfWorkbasketReportBasedOnDueDate() void testGetTotalNumbersOfTasksOfWorkbasketReportBasedOnDueDate()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
WorkbasketReport report = taskMonitorService.createWorkbasketReportBuilder().buildReport(); WorkbasketReport report = monitorService.createWorkbasketReportBuilder().buildReport();
if (LOGGER.isDebugEnabled()) { if (LOGGER.isDebugEnabled()) {
LOGGER.debug(reportToString(report)); LOGGER.debug(reportToString(report));
@ -70,12 +70,12 @@ class ProvideWorkbasketReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetWorkbasketReportWithReportLineItemDefinitions() void testGetWorkbasketReportWithReportLineItemDefinitions()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
WorkbasketReport report = WorkbasketReport report =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -104,12 +104,12 @@ class ProvideWorkbasketReportAccTest extends AbstractReportAccTest {
@WithAccessId(userName = "monitor") @WithAccessId(userName = "monitor")
@Test @Test
void testEachItemOfWorkbasketReport() throws InvalidArgumentException, NotAuthorizedException { void testEachItemOfWorkbasketReport() throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
WorkbasketReport report = WorkbasketReport report =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.inWorkingDays() .inWorkingDays()
@ -136,12 +136,12 @@ class ProvideWorkbasketReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfWorkbasketReportNotInWorkingDays() void testEachItemOfWorkbasketReportNotInWorkingDays()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
WorkbasketReport report = WorkbasketReport report =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.buildReport(); .buildReport();
@ -167,14 +167,14 @@ class ProvideWorkbasketReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfWorkbasketReportWithWorkbasketFilter() void testEachItemOfWorkbasketReportWithWorkbasketFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> workbasketIds = List<String> workbasketIds =
Collections.singletonList("WBI:000000000000000000000000000000000001"); Collections.singletonList("WBI:000000000000000000000000000000000001");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
WorkbasketReport report = WorkbasketReport report =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.workbasketIdIn(workbasketIds) .workbasketIdIn(workbasketIds)
@ -196,13 +196,13 @@ class ProvideWorkbasketReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfWorkbasketReportWithStateFilter() void testEachItemOfWorkbasketReportWithStateFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TaskState> states = Collections.singletonList(TaskState.READY); List<TaskState> states = Collections.singletonList(TaskState.READY);
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
WorkbasketReport report = WorkbasketReport report =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.stateIn(states) .stateIn(states)
@ -230,13 +230,13 @@ class ProvideWorkbasketReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfWorkbasketReportWithCategoryFilter() void testEachItemOfWorkbasketReportWithCategoryFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL"); List<String> categories = Arrays.asList("AUTOMATIC", "MANUAL");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
WorkbasketReport report = WorkbasketReport report =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.categoryIn(categories) .categoryIn(categories)
@ -264,13 +264,13 @@ class ProvideWorkbasketReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfWorkbasketReportWithDomainFilter() void testEachItemOfWorkbasketReportWithDomainFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<String> domains = Collections.singletonList("DOMAIN_A"); List<String> domains = Collections.singletonList("DOMAIN_A");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
WorkbasketReport report = WorkbasketReport report =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.domainIn(domains) .domainIn(domains)
@ -298,14 +298,14 @@ class ProvideWorkbasketReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfWorkbasketReportWithCustomFieldValueFilter() void testEachItemOfWorkbasketReportWithCustomFieldValueFilter()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
Map<CustomField, String> customAttributeFilter = new HashMap<>(); Map<CustomField, String> customAttributeFilter = new HashMap<>();
customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A"); customAttributeFilter.put(CustomField.CUSTOM_1, "Geschaeftsstelle A");
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
WorkbasketReport report = WorkbasketReport report =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.customAttributeFilterIn(customAttributeFilter) .customAttributeFilterIn(customAttributeFilter)
@ -333,7 +333,7 @@ class ProvideWorkbasketReportAccTest extends AbstractReportAccTest {
@Test @Test
void testEachItemOfWorkbasketReportForSelectedClassifications() void testEachItemOfWorkbasketReportForSelectedClassifications()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getShortListOfColumnHeaders();
List<CombinedClassificationFilter> combinedClassificationFilter = new ArrayList<>(); List<CombinedClassificationFilter> combinedClassificationFilter = new ArrayList<>();
@ -353,7 +353,7 @@ class ProvideWorkbasketReportAccTest extends AbstractReportAccTest {
new CombinedClassificationFilter("CLI:000000000000000000000000000000000005")); new CombinedClassificationFilter("CLI:000000000000000000000000000000000005"));
WorkbasketReport report = WorkbasketReport report =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.combinedClassificationFilterIn(combinedClassificationFilter) .combinedClassificationFilterIn(combinedClassificationFilter)
@ -381,11 +381,11 @@ class ProvideWorkbasketReportAccTest extends AbstractReportAccTest {
@Test @Test
void testGetTotalNumbersOfTasksOfWorkbasketReportBasedOnPlannedDateWithReportLineItemDefinitions() void testGetTotalNumbersOfTasksOfWorkbasketReportBasedOnPlannedDateWithReportLineItemDefinitions()
throws InvalidArgumentException, NotAuthorizedException { throws InvalidArgumentException, NotAuthorizedException {
TaskMonitorService taskMonitorService = taskanaEngine.getTaskMonitorService(); MonitorService monitorService = taskanaEngine.getTaskMonitorService();
List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders(); List<TimeIntervalColumnHeader> columnHeaders = getListOfColumnHeaders();
WorkbasketReport report = WorkbasketReport report =
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.buildPlannedDateBasedReport(); .buildPlannedDateBasedReport();

View File

@ -104,8 +104,7 @@ class ArchitectureTest {
"pro.taskana.classification.internal.(*)..", "pro.taskana.classification.internal.(*)..",
"pro.taskana.history.api.(*)..", "pro.taskana.history.api.(*)..",
"pro.taskana.history.internal.(*)..", "pro.taskana.history.internal.(*)..",
// to be fixed soon "pro.taskana.report.api.(*)..",
// "pro.taskana.report.api.(*)..",
"pro.taskana.report.internal.(*)..", "pro.taskana.report.internal.(*)..",
"pro.taskana.task.api.(*)..", "pro.taskana.task.api.(*)..",
"pro.taskana.task.internal.(*)..", "pro.taskana.task.internal.(*)..",

View File

@ -14,8 +14,8 @@ import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.internal.DaysToWorkingDaysReportConverter; import pro.taskana.monitor.internal.preprocessor.DaysToWorkingDaysReportConverter;
/** Test for the DaysToWorkingDaysConverter. */ /** Test for the DaysToWorkingDaysConverter. */
class DaysToWorkingDaysConverterTest { class DaysToWorkingDaysConverterTest {

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertNotNull;
@ -27,9 +27,10 @@ import pro.taskana.common.api.TaskanaEngine;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.common.internal.InternalTaskanaEngine; import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.report.api.CategoryReport; import pro.taskana.monitor.api.SelectedItem;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.CategoryReport;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
@ -37,7 +38,7 @@ import pro.taskana.task.api.TaskState;
@ExtendWith(MockitoExtension.class) @ExtendWith(MockitoExtension.class)
class CategoryReportBuilderImplTest { class CategoryReportBuilderImplTest {
@InjectMocks private TaskMonitorServiceImpl cut; @InjectMocks private MonitorServiceImpl cut;
@Mock private InternalTaskanaEngine internalTaskanaEngineMock; @Mock private InternalTaskanaEngine internalTaskanaEngineMock;
@ -45,7 +46,7 @@ class CategoryReportBuilderImplTest {
@Mock private TaskanaEngineConfiguration taskanaEngineConfiguration; @Mock private TaskanaEngineConfiguration taskanaEngineConfiguration;
@Mock private TaskMonitorMapper taskMonitorMapperMock; @Mock private MonitorMapper monitorMapperMock;
@BeforeEach @BeforeEach
void setup() { void setup() {
@ -73,7 +74,7 @@ class CategoryReportBuilderImplTest {
monitorQueryItem.setKey("EXTERN"); monitorQueryItem.setKey("EXTERN");
monitorQueryItem.setNumberOfTasks(1); monitorQueryItem.setNumberOfTasks(1);
expectedResult.add(monitorQueryItem); expectedResult.add(monitorQueryItem);
when(taskMonitorMapperMock.getTaskCountOfCategories( when(monitorMapperMock.getTaskCountOfCategories(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -100,13 +101,13 @@ class CategoryReportBuilderImplTest {
verify(taskanaEngineMock, times(2)).getConfiguration(); verify(taskanaEngineMock, times(2)).getConfiguration();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskCountOfCategories(any(), any(), any(), any(), any(), any(), any()); .getTaskCountOfCategories(any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
assertNotNull(actualResult); assertNotNull(actualResult);
@ -135,7 +136,7 @@ class CategoryReportBuilderImplTest {
monitorQueryItem.setAgeInDays(0); monitorQueryItem.setAgeInDays(0);
monitorQueryItem.setNumberOfTasks(1); monitorQueryItem.setNumberOfTasks(1);
expectedResult.add(monitorQueryItem); expectedResult.add(monitorQueryItem);
when(taskMonitorMapperMock.getTaskCountOfCategories( when(monitorMapperMock.getTaskCountOfCategories(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -163,13 +164,13 @@ class CategoryReportBuilderImplTest {
verify(taskanaEngineMock, times(2)).getConfiguration(); verify(taskanaEngineMock, times(2)).getConfiguration();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskCountOfCategories(any(), any(), any(), any(), any(), any(), any()); .getTaskCountOfCategories(any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
assertNotNull(actualResult); assertNotNull(actualResult);
@ -201,7 +202,7 @@ class CategoryReportBuilderImplTest {
List<String> expectedResult = List<String> expectedResult =
Collections.singletonList("TKI:000000000000000000000000000000000001"); Collections.singletonList("TKI:000000000000000000000000000000000001");
when(taskMonitorMapperMock.getTaskIdsForSelectedItems( when(monitorMapperMock.getTaskIdsForSelectedItems(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -232,14 +233,14 @@ class CategoryReportBuilderImplTest {
verify(taskanaEngineMock, times(2)).getConfiguration(); verify(taskanaEngineMock, times(2)).getConfiguration();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskIdsForSelectedItems( .getTaskIdsForSelectedItems(
any(), any(), any(), any(), any(), any(), any(), any(), any(), eq(false)); any(), any(), any(), any(), any(), any(), any(), any(), any(), eq(false));
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
assertNotNull(actualResult); assertNotNull(actualResult);
@ -276,7 +277,7 @@ class CategoryReportBuilderImplTest {
selectedItem.setUpperAgeLimit(5); selectedItem.setUpperAgeLimit(5);
List<String> expectedResult = Collections.singletonList("Geschaeftsstelle A"); List<String> expectedResult = Collections.singletonList("Geschaeftsstelle A");
when(taskMonitorMapperMock.getCustomAttributeValuesForReport( when(monitorMapperMock.getCustomAttributeValuesForReport(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -305,13 +306,13 @@ class CategoryReportBuilderImplTest {
verify(taskanaEngineMock, times(2)).getConfiguration(); verify(taskanaEngineMock, times(2)).getConfiguration();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getCustomAttributeValuesForReport(any(), any(), any(), any(), any(), any(), any(), any()); .getCustomAttributeValuesForReport(any(), any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
assertNotNull(actualResult); assertNotNull(actualResult);

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertNotNull;
@ -27,12 +27,13 @@ import pro.taskana.common.api.TaskanaEngine;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.common.internal.InternalTaskanaEngine; import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.report.api.ClassificationReport; import pro.taskana.monitor.api.SelectedItem;
import pro.taskana.report.api.ClassificationReport.DetailedClassificationReport; import pro.taskana.monitor.api.reports.ClassificationReport;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.ClassificationReport.DetailedClassificationReport;
import pro.taskana.report.api.item.DetailedMonitorQueryItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.item.DetailedMonitorQueryItem;
import pro.taskana.report.api.row.FoldableRow; import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.monitor.api.reports.row.FoldableRow;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
@ -40,7 +41,7 @@ import pro.taskana.task.api.TaskState;
@ExtendWith(MockitoExtension.class) @ExtendWith(MockitoExtension.class)
class ClassificationReportBuilderImplTest { class ClassificationReportBuilderImplTest {
@InjectMocks private TaskMonitorServiceImpl cut; @InjectMocks private MonitorServiceImpl cut;
@Mock private InternalTaskanaEngine internalTaskanaEngineMock; @Mock private InternalTaskanaEngine internalTaskanaEngineMock;
@ -48,7 +49,7 @@ class ClassificationReportBuilderImplTest {
@Mock private TaskanaEngineConfiguration taskanaEngineConfiguration; @Mock private TaskanaEngineConfiguration taskanaEngineConfiguration;
@Mock private TaskMonitorMapper taskMonitorMapperMock; @Mock private MonitorMapper monitorMapperMock;
@BeforeEach @BeforeEach
void setup() { void setup() {
@ -76,7 +77,7 @@ class ClassificationReportBuilderImplTest {
monitorQueryItem.setKey("CLI:000000000000000000000000000000000001"); monitorQueryItem.setKey("CLI:000000000000000000000000000000000001");
monitorQueryItem.setNumberOfTasks(1); monitorQueryItem.setNumberOfTasks(1);
expectedResult.add(monitorQueryItem); expectedResult.add(monitorQueryItem);
when(taskMonitorMapperMock.getTaskCountOfClassifications( when(monitorMapperMock.getTaskCountOfClassifications(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -103,13 +104,13 @@ class ClassificationReportBuilderImplTest {
verify(internalTaskanaEngineMock, times(3)).getEngine(); verify(internalTaskanaEngineMock, times(3)).getEngine();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskCountOfClassifications(any(), any(), any(), any(), any(), any(), any()); .getTaskCountOfClassifications(any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
assertNotNull(actualResult); assertNotNull(actualResult);
@ -140,7 +141,7 @@ class ClassificationReportBuilderImplTest {
monitorQueryItem.setAgeInDays(0); monitorQueryItem.setAgeInDays(0);
monitorQueryItem.setNumberOfTasks(1); monitorQueryItem.setNumberOfTasks(1);
expectedResult.add(monitorQueryItem); expectedResult.add(monitorQueryItem);
when(taskMonitorMapperMock.getTaskCountOfClassifications( when(monitorMapperMock.getTaskCountOfClassifications(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -169,13 +170,13 @@ class ClassificationReportBuilderImplTest {
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskCountOfClassifications(any(), any(), any(), any(), any(), any(), any()); .getTaskCountOfClassifications(any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
assertNotNull(actualResult); assertNotNull(actualResult);
@ -204,7 +205,7 @@ class ClassificationReportBuilderImplTest {
detailedMonitorQueryItem.setAttachmentKey("CLI:000000000000000000000000000000000006"); detailedMonitorQueryItem.setAttachmentKey("CLI:000000000000000000000000000000000006");
detailedMonitorQueryItem.setNumberOfTasks(1); detailedMonitorQueryItem.setNumberOfTasks(1);
expectedResult.add(detailedMonitorQueryItem); expectedResult.add(detailedMonitorQueryItem);
when(taskMonitorMapperMock.getTaskCountOfDetailedClassifications( when(monitorMapperMock.getTaskCountOfDetailedClassifications(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -231,13 +232,13 @@ class ClassificationReportBuilderImplTest {
verify(internalTaskanaEngineMock, times(3)).getEngine(); verify(internalTaskanaEngineMock, times(3)).getEngine();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskCountOfDetailedClassifications(any(), any(), any(), any(), any(), any(), any()); .getTaskCountOfDetailedClassifications(any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
FoldableRow<DetailedMonitorQueryItem> line = FoldableRow<DetailedMonitorQueryItem> line =
@ -271,7 +272,7 @@ class ClassificationReportBuilderImplTest {
detailedMonitorQueryItem.setAgeInDays(0); detailedMonitorQueryItem.setAgeInDays(0);
detailedMonitorQueryItem.setNumberOfTasks(1); detailedMonitorQueryItem.setNumberOfTasks(1);
expectedResult.add(detailedMonitorQueryItem); expectedResult.add(detailedMonitorQueryItem);
when(taskMonitorMapperMock.getTaskCountOfDetailedClassifications( when(monitorMapperMock.getTaskCountOfDetailedClassifications(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -299,13 +300,13 @@ class ClassificationReportBuilderImplTest {
verify(internalTaskanaEngineMock, times(3)).getEngine(); verify(internalTaskanaEngineMock, times(3)).getEngine();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskCountOfDetailedClassifications(any(), any(), any(), any(), any(), any(), any()); .getTaskCountOfDetailedClassifications(any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
FoldableRow<DetailedMonitorQueryItem> line = FoldableRow<DetailedMonitorQueryItem> line =
@ -342,7 +343,7 @@ class ClassificationReportBuilderImplTest {
final List<String> expectedResult = final List<String> expectedResult =
Collections.singletonList("TKI:000000000000000000000000000000000001"); Collections.singletonList("TKI:000000000000000000000000000000000001");
when(taskMonitorMapperMock.getTaskIdsForSelectedItems( when(monitorMapperMock.getTaskIdsForSelectedItems(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -373,14 +374,14 @@ class ClassificationReportBuilderImplTest {
verify(internalTaskanaEngineMock, times(3)).getEngine(); verify(internalTaskanaEngineMock, times(3)).getEngine();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskIdsForSelectedItems( .getTaskIdsForSelectedItems(
any(), any(), any(), any(), any(), any(), any(), any(), any(), eq(false)); any(), any(), any(), any(), any(), any(), any(), any(), any(), eq(false));
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
assertNotNull(actualResult); assertNotNull(actualResult);
@ -420,7 +421,7 @@ class ClassificationReportBuilderImplTest {
selectedItem.setUpperAgeLimit(5); selectedItem.setUpperAgeLimit(5);
final List<String> expectedResult = Collections.singletonList("Geschaeftsstelle A"); final List<String> expectedResult = Collections.singletonList("Geschaeftsstelle A");
when(taskMonitorMapperMock.getCustomAttributeValuesForReport( when(monitorMapperMock.getCustomAttributeValuesForReport(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -449,13 +450,13 @@ class ClassificationReportBuilderImplTest {
verify(internalTaskanaEngineMock, times(3)).getEngine(); verify(internalTaskanaEngineMock, times(3)).getEngine();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getCustomAttributeValuesForReport(any(), any(), any(), any(), any(), any(), any(), any()); .getCustomAttributeValuesForReport(any(), any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
assertNotNull(actualResult); assertNotNull(actualResult);

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull; import static org.junit.jupiter.api.Assertions.assertNotNull;
@ -26,9 +26,10 @@ import pro.taskana.common.api.TaskanaEngine;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.common.internal.InternalTaskanaEngine; import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.report.api.CustomFieldValueReport; import pro.taskana.monitor.api.SelectedItem;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.CustomFieldValueReport;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
@ -36,7 +37,7 @@ import pro.taskana.task.api.TaskState;
@ExtendWith(MockitoExtension.class) @ExtendWith(MockitoExtension.class)
class CustomFieldValueReportBuilderImplTest { class CustomFieldValueReportBuilderImplTest {
@InjectMocks private TaskMonitorServiceImpl cut; @InjectMocks private MonitorServiceImpl cut;
@Mock private InternalTaskanaEngine internalTaskanaEngineMock; @Mock private InternalTaskanaEngine internalTaskanaEngineMock;
@ -44,7 +45,7 @@ class CustomFieldValueReportBuilderImplTest {
@Mock private TaskanaEngineConfiguration taskanaEngineConfigurationMock; @Mock private TaskanaEngineConfiguration taskanaEngineConfigurationMock;
@Mock private TaskMonitorMapper taskMonitorMapperMock; @Mock private MonitorMapper monitorMapperMock;
@BeforeEach @BeforeEach
void setup() { void setup() {
@ -72,7 +73,7 @@ class CustomFieldValueReportBuilderImplTest {
monitorQueryItem.setKey("Geschaeftsstelle A"); monitorQueryItem.setKey("Geschaeftsstelle A");
monitorQueryItem.setNumberOfTasks(1); monitorQueryItem.setNumberOfTasks(1);
expectedResult.add(monitorQueryItem); expectedResult.add(monitorQueryItem);
when(taskMonitorMapperMock.getTaskCountOfCustomFieldValues( when(monitorMapperMock.getTaskCountOfCustomFieldValues(
CustomField.CUSTOM_1, CustomField.CUSTOM_1,
workbasketIds, workbasketIds,
states, states,
@ -100,13 +101,13 @@ class CustomFieldValueReportBuilderImplTest {
verify(internalTaskanaEngineMock, times(3)).getEngine(); verify(internalTaskanaEngineMock, times(3)).getEngine();
verify(taskanaEngineConfigurationMock, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfigurationMock, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfigurationMock, times(1)).getCustomHolidays(); verify(taskanaEngineConfigurationMock, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskCountOfCustomFieldValues(any(), any(), any(), any(), any(), any(), any(), any()); .getTaskCountOfCustomFieldValues(any(), any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfigurationMock); taskanaEngineConfigurationMock);
assertNotNull(actualResult); assertNotNull(actualResult);
@ -135,7 +136,7 @@ class CustomFieldValueReportBuilderImplTest {
monitorQueryItem.setAgeInDays(0); monitorQueryItem.setAgeInDays(0);
monitorQueryItem.setNumberOfTasks(1); monitorQueryItem.setNumberOfTasks(1);
expectedResult.add(monitorQueryItem); expectedResult.add(monitorQueryItem);
when(taskMonitorMapperMock.getTaskCountOfCustomFieldValues( when(monitorMapperMock.getTaskCountOfCustomFieldValues(
CustomField.CUSTOM_1, CustomField.CUSTOM_1,
workbasketIds, workbasketIds,
states, states,
@ -164,13 +165,13 @@ class CustomFieldValueReportBuilderImplTest {
verify(internalTaskanaEngineMock, times(3)).getEngine(); verify(internalTaskanaEngineMock, times(3)).getEngine();
verify(taskanaEngineConfigurationMock, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfigurationMock, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfigurationMock, times(1)).getCustomHolidays(); verify(taskanaEngineConfigurationMock, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskCountOfCustomFieldValues(any(), any(), any(), any(), any(), any(), any(), any()); .getTaskCountOfCustomFieldValues(any(), any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfigurationMock); taskanaEngineConfigurationMock);
assertNotNull(actualResult); assertNotNull(actualResult);
@ -199,7 +200,7 @@ class CustomFieldValueReportBuilderImplTest {
selectedItem.setUpperAgeLimit(5); selectedItem.setUpperAgeLimit(5);
List<String> expectedResult = Collections.singletonList("Geschaeftsstelle A"); List<String> expectedResult = Collections.singletonList("Geschaeftsstelle A");
when(taskMonitorMapperMock.getCustomAttributeValuesForReport( when(monitorMapperMock.getCustomAttributeValuesForReport(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -228,13 +229,13 @@ class CustomFieldValueReportBuilderImplTest {
verify(internalTaskanaEngineMock, times(3)).getEngine(); verify(internalTaskanaEngineMock, times(3)).getEngine();
verify(taskanaEngineConfigurationMock, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfigurationMock, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfigurationMock, times(1)).getCustomHolidays(); verify(taskanaEngineConfigurationMock, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getCustomAttributeValuesForReport(any(), any(), any(), any(), any(), any(), any(), any()); .getCustomAttributeValuesForReport(any(), any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfigurationMock); taskanaEngineConfigurationMock);
assertNotNull(actualResult); assertNotNull(actualResult);

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal;
import static java.util.Collections.singletonList; import static java.util.Collections.singletonList;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
@ -14,7 +14,8 @@ import org.junit.jupiter.api.Test;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.internal.util.DaysToWorkingDaysConverter; import pro.taskana.common.internal.util.DaysToWorkingDaysConverter;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.monitor.internal.preprocessor.DaysToWorkingDaysReportConverter;
/** Test for the DaysToWorkingDaysReportConverter. */ /** Test for the DaysToWorkingDaysReportConverter. */
class DaysToWorkingDaysReportConverterTest { class DaysToWorkingDaysReportConverterTest {

View File

@ -1,4 +1,4 @@
package pro.taskana.report.internal; package pro.taskana.monitor.internal;
import static org.junit.jupiter.api.Assertions.assertArrayEquals; import static org.junit.jupiter.api.Assertions.assertArrayEquals;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
@ -12,11 +12,11 @@ import java.util.stream.IntStream;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.Report;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.api.structure.QueryItemPreprocessor; import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.report.api.structure.Report; import pro.taskana.monitor.api.reports.item.QueryItemPreprocessor;
import pro.taskana.report.api.structure.Row; import pro.taskana.monitor.api.reports.row.Row;
/** Tests for {@link Report}. */ /** Tests for {@link Report}. */
class ReportTest { class ReportTest {

View File

@ -23,10 +23,10 @@ import pro.taskana.common.api.TaskanaEngine;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.common.internal.InternalTaskanaEngine; import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.report.api.TaskStatusReport; import pro.taskana.monitor.api.reports.TaskStatusReport;
import pro.taskana.report.api.item.TaskQueryItem; import pro.taskana.monitor.api.reports.item.TaskQueryItem;
import pro.taskana.report.internal.TaskMonitorMapper; import pro.taskana.monitor.internal.MonitorMapper;
import pro.taskana.report.internal.TaskMonitorServiceImpl; import pro.taskana.monitor.internal.MonitorServiceImpl;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
import pro.taskana.task.api.TaskanaRole; import pro.taskana.task.api.TaskanaRole;
@ -34,13 +34,13 @@ import pro.taskana.task.api.TaskanaRole;
@ExtendWith(MockitoExtension.class) @ExtendWith(MockitoExtension.class)
class TaskStatusReportBuilderImplTest { class TaskStatusReportBuilderImplTest {
@InjectMocks private TaskMonitorServiceImpl cut; @InjectMocks private MonitorServiceImpl cut;
@Mock private InternalTaskanaEngine internalTaskanaEngineMock; @Mock private InternalTaskanaEngine internalTaskanaEngineMock;
@Mock private TaskanaEngine taskanaEngineMock; @Mock private TaskanaEngine taskanaEngineMock;
@Mock private TaskMonitorMapper taskMonitorMapperMock; @Mock private MonitorMapper monitorMapperMock;
@BeforeEach @BeforeEach
void setup() { void setup() {
@ -60,20 +60,21 @@ class TaskStatusReportBuilderImplTest {
queryItem2.setState(TaskState.COMPLETED); queryItem2.setState(TaskState.COMPLETED);
queryItem2.setDomain("DOMAIN_X"); queryItem2.setDomain("DOMAIN_X");
List<TaskQueryItem> queryItems = Arrays.asList(queryItem1, queryItem2); List<TaskQueryItem> queryItems = Arrays.asList(queryItem1, queryItem2);
when(taskMonitorMapperMock.getTasksCountByState(null, null)).thenReturn(queryItems); when(monitorMapperMock.getTasksCountByState(null, null)).thenReturn(queryItems);
// when // when
final TaskStatusReport report = cut.createTaskStatusReportBuilder().buildReport(); final TaskStatusReport report = cut.createTaskStatusReportBuilder().buildReport();
// then // then
InOrder inOrder = inOrder(taskanaEngineMock, internalTaskanaEngineMock, taskMonitorMapperMock); InOrder inOrder =
inOrder(taskanaEngineMock, internalTaskanaEngineMock, monitorMapperMock);
inOrder.verify(internalTaskanaEngineMock).getEngine(); inOrder.verify(internalTaskanaEngineMock).getEngine();
inOrder.verify(taskanaEngineMock).checkRoleMembership(TaskanaRole.MONITOR, TaskanaRole.ADMIN); inOrder.verify(taskanaEngineMock).checkRoleMembership(TaskanaRole.MONITOR, TaskanaRole.ADMIN);
inOrder.verify(internalTaskanaEngineMock).openConnection(); inOrder.verify(internalTaskanaEngineMock).openConnection();
inOrder.verify(taskMonitorMapperMock).getTasksCountByState(eq(null), eq(null)); inOrder.verify(monitorMapperMock).getTasksCountByState(eq(null), eq(null));
inOrder.verify(internalTaskanaEngineMock).returnConnection(); inOrder.verify(internalTaskanaEngineMock).returnConnection();
inOrder.verifyNoMoreInteractions(); inOrder.verifyNoMoreInteractions();
verifyNoMoreInteractions(taskanaEngineMock, internalTaskanaEngineMock, taskMonitorMapperMock); verifyNoMoreInteractions(taskanaEngineMock, internalTaskanaEngineMock, monitorMapperMock);
assertNotNull(report); assertNotNull(report);
assertEquals(1, report.rowSize()); assertEquals(1, report.rowSize());
@ -96,7 +97,7 @@ class TaskStatusReportBuilderImplTest {
queryItem2.setState(TaskState.COMPLETED); queryItem2.setState(TaskState.COMPLETED);
queryItem2.setDomain("DOMAIN_X"); queryItem2.setDomain("DOMAIN_X");
List<TaskQueryItem> queryItems = Arrays.asList(queryItem1, queryItem2); List<TaskQueryItem> queryItems = Arrays.asList(queryItem1, queryItem2);
when(taskMonitorMapperMock.getTasksCountByState(eq(null), eq(Collections.emptyList()))) when(monitorMapperMock.getTasksCountByState(eq(null), eq(Collections.emptyList())))
.thenReturn(queryItems); .thenReturn(queryItems);
// when // when
@ -104,16 +105,17 @@ class TaskStatusReportBuilderImplTest {
cut.createTaskStatusReportBuilder().stateIn(Collections.emptyList()).buildReport(); cut.createTaskStatusReportBuilder().stateIn(Collections.emptyList()).buildReport();
// then // then
InOrder inOrder = inOrder(taskanaEngineMock, taskMonitorMapperMock, internalTaskanaEngineMock); InOrder inOrder =
inOrder(taskanaEngineMock, monitorMapperMock, internalTaskanaEngineMock);
inOrder.verify(internalTaskanaEngineMock).getEngine(); inOrder.verify(internalTaskanaEngineMock).getEngine();
inOrder.verify(taskanaEngineMock).checkRoleMembership(TaskanaRole.MONITOR, TaskanaRole.ADMIN); inOrder.verify(taskanaEngineMock).checkRoleMembership(TaskanaRole.MONITOR, TaskanaRole.ADMIN);
inOrder.verify(internalTaskanaEngineMock).openConnection(); inOrder.verify(internalTaskanaEngineMock).openConnection();
inOrder inOrder
.verify(taskMonitorMapperMock) .verify(monitorMapperMock)
.getTasksCountByState(eq(null), eq(Collections.emptyList())); .getTasksCountByState(eq(null), eq(Collections.emptyList()));
inOrder.verify(internalTaskanaEngineMock).returnConnection(); inOrder.verify(internalTaskanaEngineMock).returnConnection();
inOrder.verifyNoMoreInteractions(); inOrder.verifyNoMoreInteractions();
verifyNoMoreInteractions(taskanaEngineMock, taskMonitorMapperMock, internalTaskanaEngineMock); verifyNoMoreInteractions(taskanaEngineMock, monitorMapperMock, internalTaskanaEngineMock);
assertNotNull(report); assertNotNull(report);
assertEquals(1, report.rowSize()); assertEquals(1, report.rowSize());

View File

@ -28,13 +28,13 @@ import pro.taskana.common.api.TaskanaEngine;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.common.internal.InternalTaskanaEngine; import pro.taskana.common.internal.InternalTaskanaEngine;
import pro.taskana.report.api.WorkbasketReport; import pro.taskana.monitor.api.CombinedClassificationFilter;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.SelectedItem;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.WorkbasketReport;
import pro.taskana.report.internal.CombinedClassificationFilter; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.internal.SelectedItem; import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.report.internal.TaskMonitorMapper; import pro.taskana.monitor.internal.MonitorMapper;
import pro.taskana.report.internal.TaskMonitorServiceImpl; import pro.taskana.monitor.internal.MonitorServiceImpl;
import pro.taskana.task.api.CustomField; import pro.taskana.task.api.CustomField;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
import pro.taskana.task.api.TaskanaRole; import pro.taskana.task.api.TaskanaRole;
@ -43,7 +43,7 @@ import pro.taskana.task.api.TaskanaRole;
@ExtendWith(MockitoExtension.class) @ExtendWith(MockitoExtension.class)
class WorkbasketReportBuilderImplTest { class WorkbasketReportBuilderImplTest {
@InjectMocks private TaskMonitorServiceImpl cut; @InjectMocks private MonitorServiceImpl cut;
@Mock private InternalTaskanaEngine internalTaskanaEngineMock; @Mock private InternalTaskanaEngine internalTaskanaEngineMock;
@ -51,7 +51,7 @@ class WorkbasketReportBuilderImplTest {
@Mock private TaskanaEngineConfiguration taskanaEngineConfiguration; @Mock private TaskanaEngineConfiguration taskanaEngineConfiguration;
@Mock private TaskMonitorMapper taskMonitorMapperMock; @Mock private MonitorMapper monitorMapperMock;
@BeforeEach @BeforeEach
void setup() { void setup() {
@ -84,7 +84,7 @@ class WorkbasketReportBuilderImplTest {
monitorQueryItem.setKey("WBI:000000000000000000000000000000000001"); monitorQueryItem.setKey("WBI:000000000000000000000000000000000001");
monitorQueryItem.setNumberOfTasks(1); monitorQueryItem.setNumberOfTasks(1);
expectedResult.add(monitorQueryItem); expectedResult.add(monitorQueryItem);
when(taskMonitorMapperMock.getTaskCountOfWorkbaskets( when(monitorMapperMock.getTaskCountOfWorkbaskets(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -113,13 +113,13 @@ class WorkbasketReportBuilderImplTest {
verify(internalTaskanaEngineMock, times(3)).getEngine(); verify(internalTaskanaEngineMock, times(3)).getEngine();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskCountOfWorkbaskets(any(), any(), any(), any(), any(), any(), any(), any()); .getTaskCountOfWorkbaskets(any(), any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
assertNotNull(actualResult); assertNotNull(actualResult);
@ -154,7 +154,7 @@ class WorkbasketReportBuilderImplTest {
monitorQueryItem.setAgeInDays(0); monitorQueryItem.setAgeInDays(0);
monitorQueryItem.setNumberOfTasks(1); monitorQueryItem.setNumberOfTasks(1);
expectedResult.add(monitorQueryItem); expectedResult.add(monitorQueryItem);
when(taskMonitorMapperMock.getTaskCountOfWorkbaskets( when(monitorMapperMock.getTaskCountOfWorkbaskets(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -184,13 +184,13 @@ class WorkbasketReportBuilderImplTest {
verify(internalTaskanaEngineMock, times(3)).getEngine(); verify(internalTaskanaEngineMock, times(3)).getEngine();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskCountOfWorkbaskets(any(), any(), any(), any(), any(), any(), any(), any()); .getTaskCountOfWorkbaskets(any(), any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
assertNotNull(actualResult); assertNotNull(actualResult);
@ -223,7 +223,7 @@ class WorkbasketReportBuilderImplTest {
List<String> expectedResult = List<String> expectedResult =
Collections.singletonList("TKI:000000000000000000000000000000000001"); Collections.singletonList("TKI:000000000000000000000000000000000001");
when(taskMonitorMapperMock.getTaskIdsForSelectedItems( when(monitorMapperMock.getTaskIdsForSelectedItems(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -254,14 +254,14 @@ class WorkbasketReportBuilderImplTest {
verify(internalTaskanaEngineMock, times(3)).getEngine(); verify(internalTaskanaEngineMock, times(3)).getEngine();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskIdsForSelectedItems( .getTaskIdsForSelectedItems(
any(), any(), any(), any(), any(), any(), any(), any(), any(), eq(false)); any(), any(), any(), any(), any(), any(), any(), any(), any(), eq(false));
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
assertNotNull(actualResult); assertNotNull(actualResult);
@ -302,7 +302,7 @@ class WorkbasketReportBuilderImplTest {
selectedItem.setUpperAgeLimit(5); selectedItem.setUpperAgeLimit(5);
List<String> expectedResult = Collections.singletonList("Geschaeftsstelle A"); List<String> expectedResult = Collections.singletonList("Geschaeftsstelle A");
when(taskMonitorMapperMock.getCustomAttributeValuesForReport( when(monitorMapperMock.getCustomAttributeValuesForReport(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -331,13 +331,13 @@ class WorkbasketReportBuilderImplTest {
verify(internalTaskanaEngineMock, times(3)).getEngine(); verify(internalTaskanaEngineMock, times(3)).getEngine();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getCustomAttributeValuesForReport(any(), any(), any(), any(), any(), any(), any(), any()); .getCustomAttributeValuesForReport(any(), any(), any(), any(), any(), any(), any(), any());
verify(internalTaskanaEngineMock, times(1)).returnConnection(); verify(internalTaskanaEngineMock, times(1)).returnConnection();
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
assertNotNull(actualResult); assertNotNull(actualResult);
@ -377,7 +377,7 @@ class WorkbasketReportBuilderImplTest {
monitorQueryItem.setKey("WBI:000000000000000000000000000000000001"); monitorQueryItem.setKey("WBI:000000000000000000000000000000000001");
monitorQueryItem.setNumberOfTasks(1); monitorQueryItem.setNumberOfTasks(1);
expectedResult.add(monitorQueryItem); expectedResult.add(monitorQueryItem);
when(taskMonitorMapperMock.getTaskCountOfWorkbasketsBasedOnPlannedDate( when(monitorMapperMock.getTaskCountOfWorkbasketsBasedOnPlannedDate(
workbasketIds, workbasketIds,
states, states,
categories, categories,
@ -406,7 +406,7 @@ class WorkbasketReportBuilderImplTest {
verify(internalTaskanaEngineMock, times(3)).getEngine(); verify(internalTaskanaEngineMock, times(3)).getEngine();
verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled(); verify(taskanaEngineConfiguration, times(1)).isGermanPublicHolidaysEnabled();
verify(taskanaEngineConfiguration, times(1)).getCustomHolidays(); verify(taskanaEngineConfiguration, times(1)).getCustomHolidays();
verify(taskMonitorMapperMock, times(1)) verify(monitorMapperMock, times(1))
.getTaskCountOfWorkbasketsBasedOnPlannedDate( .getTaskCountOfWorkbasketsBasedOnPlannedDate(
workbasketIds, workbasketIds,
states, states,
@ -420,7 +420,7 @@ class WorkbasketReportBuilderImplTest {
verifyNoMoreInteractions( verifyNoMoreInteractions(
internalTaskanaEngineMock, internalTaskanaEngineMock,
taskanaEngineMock, taskanaEngineMock,
taskMonitorMapperMock, monitorMapperMock,
taskanaEngineConfiguration); taskanaEngineConfiguration);
assertNotNull(actualResult); assertNotNull(actualResult);

View File

@ -17,8 +17,8 @@ import org.springframework.web.bind.annotation.RestController;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.rest.resource.ReportResource; import pro.taskana.rest.resource.ReportResource;
import pro.taskana.rest.resource.ReportResourceAssembler; import pro.taskana.rest.resource.ReportResourceAssembler;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;
@ -30,13 +30,13 @@ public class MonitorController {
private static final Logger LOGGER = LoggerFactory.getLogger(MonitorController.class); private static final Logger LOGGER = LoggerFactory.getLogger(MonitorController.class);
private TaskMonitorService taskMonitorService; private MonitorService monitorService;
private ReportResourceAssembler reportResourceAssembler; private ReportResourceAssembler reportResourceAssembler;
MonitorController( MonitorController(
TaskMonitorService taskMonitorService, ReportResourceAssembler reportResourceAssembler) { MonitorService monitorService, ReportResourceAssembler reportResourceAssembler) {
this.taskMonitorService = taskMonitorService; this.monitorService = monitorService;
this.reportResourceAssembler = reportResourceAssembler; this.reportResourceAssembler = reportResourceAssembler;
} }
@ -50,7 +50,7 @@ public class MonitorController {
ResponseEntity<ReportResource> response = ResponseEntity<ReportResource> response =
ResponseEntity.ok( ResponseEntity.ok(
reportResourceAssembler.toResource( reportResourceAssembler.toResource(
taskMonitorService monitorService
.createTaskStatusReportBuilder() .createTaskStatusReportBuilder()
.stateIn(states) .stateIn(states)
.domainIn(domains) .domainIn(domains)
@ -73,7 +73,7 @@ public class MonitorController {
ReportResource report = ReportResource report =
reportResourceAssembler.toResource( reportResourceAssembler.toResource(
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.withColumnHeaders(getRangeTimeInterval()) .withColumnHeaders(getRangeTimeInterval())
.buildReport(), .buildReport(),
@ -96,7 +96,7 @@ public class MonitorController {
ReportResource report = ReportResource report =
reportResourceAssembler.toResource( reportResourceAssembler.toResource(
taskMonitorService monitorService
.createWorkbasketReportBuilder() .createWorkbasketReportBuilder()
.stateIn(states) .stateIn(states)
.withColumnHeaders(getDateTimeInterval(daysInPast)) .withColumnHeaders(getDateTimeInterval(daysInPast))
@ -118,7 +118,7 @@ public class MonitorController {
ReportResource report = ReportResource report =
reportResourceAssembler.toResource( reportResourceAssembler.toResource(
taskMonitorService monitorService
.createClassificationReportBuilder() .createClassificationReportBuilder()
.withColumnHeaders(getRangeTimeInterval()) .withColumnHeaders(getRangeTimeInterval())
.buildReport()); .buildReport());
@ -141,7 +141,7 @@ public class MonitorController {
return ResponseEntity.status(HttpStatus.OK) return ResponseEntity.status(HttpStatus.OK)
.body( .body(
reportResourceAssembler.toResource( reportResourceAssembler.toResource(
taskMonitorService monitorService
.createTimestampReportBuilder() .createTimestampReportBuilder()
.withColumnHeaders(columnHeaders) .withColumnHeaders(columnHeaders)
.buildReport())); .buildReport()));

View File

@ -18,7 +18,7 @@ import pro.taskana.classification.api.ClassificationService;
import pro.taskana.common.api.TaskanaEngine; import pro.taskana.common.api.TaskanaEngine;
import pro.taskana.configuration.SpringTaskanaEngineConfiguration; import pro.taskana.configuration.SpringTaskanaEngineConfiguration;
import pro.taskana.ldap.LdapClient; import pro.taskana.ldap.LdapClient;
import pro.taskana.report.api.TaskMonitorService; import pro.taskana.monitor.api.MonitorService;
import pro.taskana.task.api.TaskService; import pro.taskana.task.api.TaskService;
import pro.taskana.workbasket.api.WorkbasketService; import pro.taskana.workbasket.api.WorkbasketService;
@ -42,7 +42,7 @@ public class RestConfiguration {
} }
@Bean @Bean
public TaskMonitorService getTaskMonitorService(TaskanaEngine taskanaEngine) { public MonitorService getTaskMonitorService(TaskanaEngine taskanaEngine) {
return taskanaEngine.getTaskMonitorService(); return taskanaEngine.getTaskMonitorService();
} }

View File

@ -4,8 +4,8 @@ import java.util.Arrays;
import java.util.List; import java.util.List;
import org.springframework.hateoas.ResourceSupport; import org.springframework.hateoas.ResourceSupport;
import pro.taskana.report.api.row.SingleRow; import pro.taskana.monitor.api.reports.Report;
import pro.taskana.report.api.structure.Report; import pro.taskana.monitor.api.reports.row.SingleRow;
/** Resource class for {@link Report}. */ /** Resource class for {@link Report}. */
public class ReportResource extends ResourceSupport { public class ReportResource extends ResourceSupport {

View File

@ -14,16 +14,16 @@ import org.springframework.stereotype.Component;
import pro.taskana.common.api.exceptions.InvalidArgumentException; import pro.taskana.common.api.exceptions.InvalidArgumentException;
import pro.taskana.common.api.exceptions.NotAuthorizedException; import pro.taskana.common.api.exceptions.NotAuthorizedException;
import pro.taskana.report.api.ClassificationReport; import pro.taskana.monitor.api.reports.header.ColumnHeader;
import pro.taskana.report.api.TaskStatusReport; import pro.taskana.monitor.api.reports.item.QueryItem;
import pro.taskana.report.api.TimestampReport; import pro.taskana.monitor.api.reports.ClassificationReport;
import pro.taskana.report.api.WorkbasketReport; import pro.taskana.monitor.api.reports.Report;
import pro.taskana.report.api.row.FoldableRow; import pro.taskana.monitor.api.reports.TaskStatusReport;
import pro.taskana.report.api.row.SingleRow; import pro.taskana.monitor.api.reports.TimestampReport;
import pro.taskana.report.api.structure.ColumnHeader; import pro.taskana.monitor.api.reports.WorkbasketReport;
import pro.taskana.report.api.structure.QueryItem; import pro.taskana.monitor.api.reports.row.FoldableRow;
import pro.taskana.report.api.structure.Report; import pro.taskana.monitor.api.reports.row.Row;
import pro.taskana.report.api.structure.Row; import pro.taskana.monitor.api.reports.row.SingleRow;
import pro.taskana.rest.MonitorController; import pro.taskana.rest.MonitorController;
import pro.taskana.task.api.TaskState; import pro.taskana.task.api.TaskState;

View File

@ -17,11 +17,11 @@ import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import pro.taskana.TaskanaSpringBootTest; import pro.taskana.TaskanaSpringBootTest;
import pro.taskana.report.api.ClassificationReport; import pro.taskana.monitor.api.reports.header.TimeIntervalColumnHeader;
import pro.taskana.report.api.WorkbasketReport; import pro.taskana.monitor.api.reports.item.DetailedMonitorQueryItem;
import pro.taskana.report.api.header.TimeIntervalColumnHeader; import pro.taskana.monitor.api.reports.item.MonitorQueryItem;
import pro.taskana.report.api.item.DetailedMonitorQueryItem; import pro.taskana.monitor.api.reports.ClassificationReport;
import pro.taskana.report.api.item.MonitorQueryItem; import pro.taskana.monitor.api.reports.WorkbasketReport;
/** Test for {@link ReportResourceAssembler}. */ /** Test for {@link ReportResourceAssembler}. */
@TaskanaSpringBootTest @TaskanaSpringBootTest