This is an automated email from the ASF dual-hosted git repository.
stefanegli pushed a commit to branch master
in repository
https://gitbox.apache.org/repos/asf/sling-org-apache-sling-event.git
The following commit(s) were added to refs/heads/master by this push:
new ce1b71c SLING-12737 The method findJobs in JobManagerImpl does not
accept a template containing an operation (#40)
ce1b71c is described below
commit ce1b71c6a171afd9cfe43245a54c6677c97e2267
Author: mirsilstan <[email protected]>
AuthorDate: Tue Apr 22 18:11:20 2025 +0300
SLING-12737 The method findJobs in JobManagerImpl does not accept a
template containing an operation (#40)
authored-by: mirceas <[email protected]>
---
.../java/org/apache/sling/event/impl/jobs/JobManagerImpl.java | 6 ++++--
src/test/java/org/apache/sling/event/it/HistoryIT.java | 9 +++++++++
2 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/src/main/java/org/apache/sling/event/impl/jobs/JobManagerImpl.java
b/src/main/java/org/apache/sling/event/impl/jobs/JobManagerImpl.java
index 4f4ad08..564b21a 100644
--- a/src/main/java/org/apache/sling/event/impl/jobs/JobManagerImpl.java
+++ b/src/main/java/org/apache/sling/event/impl/jobs/JobManagerImpl.java
@@ -422,9 +422,9 @@ public class JobManagerImpl
boolean first = true;
while ( i.hasNext() ) {
final Map.Entry<String, Object> current = i.next();
- final String key = ISO9075.encode(current.getKey());
+ final String key = current.getKey();
final char firstChar = key.length() > 0 ?
key.charAt(0) : 0;
- final String propName;
+ String propName;
final Operation op;
if ( firstChar == '=' ) {
propName = key.substring(1);
@@ -452,6 +452,8 @@ public class JobManagerImpl
op = Operation.EQUALS;
}
+ propName = ISO9075.encode(propName);
+
if ( first ) {
first = false;
buf.append('@');
diff --git a/src/test/java/org/apache/sling/event/it/HistoryIT.java
b/src/test/java/org/apache/sling/event/it/HistoryIT.java
index d97c190..056dcb4 100644
--- a/src/test/java/org/apache/sling/event/it/HistoryIT.java
+++ b/src/test/java/org/apache/sling/event/it/HistoryIT.java
@@ -18,10 +18,12 @@
*/
package org.apache.sling.event.it;
+import java.time.OffsetDateTime;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
+import org.apache.sling.event.impl.jobs.JobImpl;
import org.apache.sling.event.impl.jobs.config.ConfigurationConstants;
import org.apache.sling.event.jobs.Job;
import org.apache.sling.event.jobs.JobManager;
@@ -99,6 +101,8 @@ public class HistoryIT extends AbstractJobHandlingIT {
}
});
+
+ OffsetDateTime start = OffsetDateTime.now();
for(int i = 0; i< 10; i++) {
this.addJob(i);
}
@@ -118,6 +122,11 @@ public class HistoryIT extends AbstractJobHandlingIT {
assertEquals(0, jobManager.findJobs(JobManager.QueryType.STOPPED,
TOPIC, -1, (Map<String, Object>[])null).size());
assertEquals(7, jobManager.findJobs(JobManager.QueryType.SUCCEEDED,
TOPIC, -1, (Map<String, Object>[])null).size());
+ Map<String, Object> template = new HashMap<>();
+ template.put(">=" + JobImpl.PROPERTY_JOB_STARTED_TIME,
start.toString());
+ template.put("<" + JobImpl.PROPERTY_FINISHED_DATE,
OffsetDateTime.now().toString());
+ assertEquals(7, jobManager.findJobs(JobManager.QueryType.SUCCEEDED,
TOPIC, -1, template).size());
+
// find all topics
assertEquals(7, jobManager.findJobs(JobManager.QueryType.SUCCEEDED,
null, -1, (Map<String, Object>[])null).size());