Arsnael commented on code in PR #1520:
URL: https://github.com/apache/james-project/pull/1520#discussion_r1168370000


##########
server/apps/distributed-app/docs/modules/ROOT/pages/operate/webadmin.adoc:
##########
@@ -276,9 +276,19 @@ Additional optional task parameters are supported:
 - `status` one of `waiting`, `inProgress`, `canceledRequested`, `completed`, 
`canceled`, `failed`. Only
 tasks with the given status are returned.
 - `type`: only tasks with the given type are returned.
+- `submittedBefore`: Date. Returns only tasks submitted before this date.
+- `submittedAfter`: Date. Returns only tasks submitted after this date.
+- `startedBefore`: Date. Returns only tasks started before this date.
+- `startedAfter`: Date. Returns only tasks started after this date.
+- `completedBefore`: Date. Returns only tasks completed before this date.
+- `completedAfter`: Date. Returns only tasks completed after this date.
+- `failedBefore`: Date. Returns only tasks failed before this date.
+- `faieldAfter`: Date. Returns only tasks faield after this date.

Review Comment:
   ```suggestion
   - `failedAfter`: Date. Returns only tasks failed after this date.
   ```



##########
server/protocols/webadmin/webadmin-core/src/main/java/org/apache/james/webadmin/routes/TasksRoutes.java:
##########
@@ -74,6 +75,122 @@ public Stream<TaskExecutionDetails> 
apply(Stream<TaskExecutionDetails> stream) {
         }
     }
 
+    static class SubmittedBeforeTaskListTransformation implements 
TaskListTransformation {
+        private final ZonedDateTime time;
+
+        public SubmittedBeforeTaskListTransformation(ZonedDateTime time) {
+            this.time = time;
+        }
+
+        @Override
+        public Stream<TaskExecutionDetails> apply(Stream<TaskExecutionDetails> 
stream) {
+            return stream.filter(taskExecutionDetails -> 
taskExecutionDetails.getSubmittedDate().isBefore(time));
+        }
+    }
+
+    static class StartedBeforeTaskListTransformation implements 
TaskListTransformation {
+        private final ZonedDateTime time;
+
+        public StartedBeforeTaskListTransformation(ZonedDateTime time) {
+            this.time = time;
+        }
+
+        @Override
+        public Stream<TaskExecutionDetails> apply(Stream<TaskExecutionDetails> 
stream) {
+            return stream.filter(taskExecutionDetails -> 
taskExecutionDetails.getStartedDate()
+                .map(started -> started.isBefore(time))
+                .orElse(false));
+        }
+    }
+
+    static class FailedBeforeTaskListTransformation implements 
TaskListTransformation {
+        private final ZonedDateTime time;
+
+        public FailedBeforeTaskListTransformation(ZonedDateTime time) {
+            this.time = time;
+        }
+
+        @Override
+        public Stream<TaskExecutionDetails> apply(Stream<TaskExecutionDetails> 
stream) {
+            return stream.filter(taskExecutionDetails -> 
taskExecutionDetails.getFailedDate()
+                .map(started -> started.isBefore(time))
+                .orElse(false));
+        }
+    }
+
+    static class CompetedBeforeTaskListTransformation implements 
TaskListTransformation {
+        private final ZonedDateTime time;
+
+        public CompetedBeforeTaskListTransformation(ZonedDateTime time) {
+            this.time = time;
+        }
+
+        @Override
+        public Stream<TaskExecutionDetails> apply(Stream<TaskExecutionDetails> 
stream) {
+            return stream.filter(taskExecutionDetails -> 
taskExecutionDetails.getCompletedDate()
+                .map(started -> started.isBefore(time))
+                .orElse(false));
+        }
+    }
+
+    static class SubmittedAfterTaskListTransformation implements 
TaskListTransformation {
+        private final ZonedDateTime time;
+
+        public SubmittedAfterTaskListTransformation(ZonedDateTime time) {
+            this.time = time;
+        }
+
+        @Override
+        public Stream<TaskExecutionDetails> apply(Stream<TaskExecutionDetails> 
stream) {
+            return stream.filter(taskExecutionDetails -> 
taskExecutionDetails.getSubmittedDate().isAfter(time));
+        }
+    }
+
+    static class StartedAfterTaskListTransformation implements 
TaskListTransformation {
+        private final ZonedDateTime time;
+
+        public StartedAfterTaskListTransformation(ZonedDateTime time) {
+            this.time = time;
+        }
+
+        @Override
+        public Stream<TaskExecutionDetails> apply(Stream<TaskExecutionDetails> 
stream) {
+            return stream.filter(taskExecutionDetails -> 
taskExecutionDetails.getStartedDate()
+                .map(started -> started.isAfter(time))
+                .orElse(false));
+        }
+    }
+
+    static class FailedAfterTaskListTransformation implements 
TaskListTransformation {
+        private final ZonedDateTime time;
+
+        public FailedAfterTaskListTransformation(ZonedDateTime time) {
+            this.time = time;
+        }
+
+        @Override
+        public Stream<TaskExecutionDetails> apply(Stream<TaskExecutionDetails> 
stream) {
+            return stream.filter(taskExecutionDetails -> 
taskExecutionDetails.getFailedDate()
+                .map(started -> started.isAfter(time))
+                .orElse(false));
+        }
+    }
+
+    static class CompetedAfterTaskListTransformation implements 
TaskListTransformation {

Review Comment:
   ```suggestion
       static class CompletedAfterTaskListTransformation implements 
TaskListTransformation {
   ```



##########
src/site/markdown/server/manage-webadmin.md:
##########
@@ -4354,9 +4354,19 @@ Additionnal optional task parameters are supported:
  - `status` one of `waiting`, `inProgress`, `canceledRequested`, `completed`, 
`canceled`, `failed`. Only
  tasks with the given status are returned.
  - `type`: only tasks with the given type are returned.
+- `submittedBefore`: Date. Returns only tasks submitted before this date.
+- `submittedAfter`: Date. Returns only tasks submitted after this date.
+- `startedBefore`: Date. Returns only tasks started before this date.
+- `startedAfter`: Date. Returns only tasks started after this date.
+- `completedBefore`: Date. Returns only tasks completed before this date.
+- `completedAfter`: Date. Returns only tasks completed after this date.
+- `failedBefore`: Date. Returns only tasks failed before this date.
+- `faieldAfter`: Date. Returns only tasks faield after this date.

Review Comment:
   ```suggestion
   - `failedAfter`: Date. Returns only tasks failed after this date.
   ```



##########
server/protocols/webadmin/webadmin-core/src/main/java/org/apache/james/webadmin/routes/TasksRoutes.java:
##########
@@ -74,6 +75,122 @@ public Stream<TaskExecutionDetails> 
apply(Stream<TaskExecutionDetails> stream) {
         }
     }
 
+    static class SubmittedBeforeTaskListTransformation implements 
TaskListTransformation {
+        private final ZonedDateTime time;
+
+        public SubmittedBeforeTaskListTransformation(ZonedDateTime time) {
+            this.time = time;
+        }
+
+        @Override
+        public Stream<TaskExecutionDetails> apply(Stream<TaskExecutionDetails> 
stream) {
+            return stream.filter(taskExecutionDetails -> 
taskExecutionDetails.getSubmittedDate().isBefore(time));
+        }
+    }
+
+    static class StartedBeforeTaskListTransformation implements 
TaskListTransformation {
+        private final ZonedDateTime time;
+
+        public StartedBeforeTaskListTransformation(ZonedDateTime time) {
+            this.time = time;
+        }
+
+        @Override
+        public Stream<TaskExecutionDetails> apply(Stream<TaskExecutionDetails> 
stream) {
+            return stream.filter(taskExecutionDetails -> 
taskExecutionDetails.getStartedDate()
+                .map(started -> started.isBefore(time))
+                .orElse(false));
+        }
+    }
+
+    static class FailedBeforeTaskListTransformation implements 
TaskListTransformation {
+        private final ZonedDateTime time;
+
+        public FailedBeforeTaskListTransformation(ZonedDateTime time) {
+            this.time = time;
+        }
+
+        @Override
+        public Stream<TaskExecutionDetails> apply(Stream<TaskExecutionDetails> 
stream) {
+            return stream.filter(taskExecutionDetails -> 
taskExecutionDetails.getFailedDate()
+                .map(started -> started.isBefore(time))
+                .orElse(false));
+        }
+    }
+
+    static class CompetedBeforeTaskListTransformation implements 
TaskListTransformation {

Review Comment:
   ```suggestion
       static class CompletedBeforeTaskListTransformation implements 
TaskListTransformation {
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to