1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.core.persistence.api.dao;
20
21 import java.time.OffsetDateTime;
22 import java.util.List;
23 import java.util.Optional;
24 import org.apache.syncope.common.lib.types.TaskType;
25 import org.apache.syncope.core.persistence.api.dao.search.OrderByClause;
26 import org.apache.syncope.core.persistence.api.entity.task.Task;
27 import org.apache.syncope.core.persistence.api.entity.task.TaskExec;
28
29 public interface TaskExecDAO extends DAO<TaskExec<?>> {
30
31 <T extends Task<T>> TaskExec<T> find(TaskType type, String key);
32
33 Optional<TaskExec<?>> find(String key);
34
35 List<TaskExec<?>> findRecent(int max);
36
37 TaskExec<?> findLatestStarted(TaskType type, Task<?> task);
38
39 TaskExec<?> findLatestEnded(TaskType type, Task<?> task);
40
41 int count(Task<?> task, OffsetDateTime before, OffsetDateTime after);
42
43 List<TaskExec<?>> findAll(
44 Task<?> task,
45 OffsetDateTime before,
46 OffsetDateTime after,
47 int page,
48 int itemsPerPage,
49 List<OrderByClause> orderByClauses);
50
51 <T extends Task<T>> TaskExec<T> save(TaskExec<T> execution);
52
53 <T extends Task<T>> void saveAndAdd(TaskType type, String taskKey, TaskExec<T> execution);
54
55 <T extends Task<T>> void delete(TaskType type, String key);
56
57 <T extends Task<T>> void delete(TaskExec<T> execution);
58 }