This is an automated email from the ASF dual-hosted git repository. rombert pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-event.git
commit 2bfcd3ebb2fc129a6df379c7f5a9c82e0b6946c0 Author: Carsten Ziegeler <[email protected]> AuthorDate: Mon May 22 05:12:09 2017 +0000 SLING-6823 : Use Timer instead of scheduler for delayed execution git-svn-id: https://svn.apache.org/repos/asf/sling/trunk@1795773 13f79535-47bb-0310-9956-ffa450edef68 --- pom.xml | 2 +- .../impl/jobs/config/JobManagerConfiguration.java | 6 +- .../jobs/config/JobManagerConfigurationTest.java | 125 +-------------------- .../sling/event/it/AbstractJobHandlingTest.java | 3 +- 4 files changed, 7 insertions(+), 129 deletions(-) diff --git a/pom.xml b/pom.xml index eab232e..e420635 100644 --- a/pom.xml +++ b/pom.xml @@ -259,7 +259,7 @@ <dependency> <groupId>org.apache.sling</groupId> <artifactId>org.apache.sling.discovery.commons</artifactId> - <version>1.0.12</version> + <version>1.0.20</version> <scope>provided</scope> </dependency> <dependency> diff --git a/src/main/java/org/apache/sling/event/impl/jobs/config/JobManagerConfiguration.java b/src/main/java/org/apache/sling/event/impl/jobs/config/JobManagerConfiguration.java index 418b064..f3647c6 100644 --- a/src/main/java/org/apache/sling/event/impl/jobs/config/JobManagerConfiguration.java +++ b/src/main/java/org/apache/sling/event/impl/jobs/config/JobManagerConfiguration.java @@ -33,7 +33,6 @@ import org.apache.sling.api.resource.PersistenceException; import org.apache.sling.api.resource.ResourceResolver; import org.apache.sling.api.resource.ResourceResolverFactory; import org.apache.sling.commons.osgi.PropertiesUtil; -import org.apache.sling.commons.scheduler.Scheduler; import org.apache.sling.discovery.TopologyEvent; import org.apache.sling.discovery.TopologyEvent.Type; import org.apache.sling.discovery.TopologyEventListener; @@ -164,9 +163,6 @@ public class JobManagerConfiguration { private QueueConfigurationManager queueConfigManager; @Reference(policyOption=ReferencePolicyOption.GREEDY) - private Scheduler scheduler; - - @Reference(policyOption=ReferencePolicyOption.GREEDY) private ServiceUserMapped serviceUserMapped; /** Is this still active? */ @@ -226,7 +222,7 @@ public class JobManagerConfiguration { public void handleTopologyEvent(TopologyEvent event) { doHandleTopologyEvent(event); } - }, this.scheduler, logger); + }, logger); } else { logger.debug("activate: job manager will start without delay. ({}:{})", config.startup_delay(), this.startupDelay); } diff --git a/src/test/java/org/apache/sling/event/impl/jobs/config/JobManagerConfigurationTest.java b/src/test/java/org/apache/sling/event/impl/jobs/config/JobManagerConfigurationTest.java index 486b823..fa5ccf6 100644 --- a/src/test/java/org/apache/sling/event/impl/jobs/config/JobManagerConfigurationTest.java +++ b/src/test/java/org/apache/sling/event/impl/jobs/config/JobManagerConfigurationTest.java @@ -22,21 +22,13 @@ import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; -import java.io.Serializable; import java.util.ArrayList; import java.util.Collections; -import java.util.Date; import java.util.List; -import java.util.Map; -import java.util.NoSuchElementException; -import java.util.Timer; -import java.util.TimerTask; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicBoolean; -import org.apache.sling.commons.scheduler.ScheduleOptions; -import org.apache.sling.commons.scheduler.Scheduler; import org.apache.sling.discovery.ClusterView; import org.apache.sling.discovery.InstanceDescription; import org.apache.sling.discovery.TopologyEvent; @@ -69,7 +61,7 @@ public class JobManagerConfigurationTest { private static class ChangeListener implements ConfigurationChangeListener { - public final List<Boolean> events = new ArrayList<Boolean>(); + public final List<Boolean> events = new ArrayList<>(); private volatile CountDownLatch latch; public void init(final int count) { @@ -90,132 +82,21 @@ public class JobManagerConfigurationTest { } } - private Scheduler createScheduler() { - return new Scheduler() { - - @Override - public boolean unschedule(String jobName) { - // TODO Auto-generated method stub - return false; - } - - @Override - public boolean schedule(final Object job, ScheduleOptions options) { - if ( job instanceof Runnable ) { - final Timer t = new Timer(); - t.schedule(new TimerTask() { - - @Override - public void run() { - ((Runnable)job).run(); - } - }, 3000); - return true; - } - return false; - } - - @Override - public void removeJob(String name) throws NoSuchElementException { - // TODO Auto-generated method stub - - } - - @Override - public boolean fireJobAt(String name, Object job, Map<String, Serializable> config, Date date, int times, - long period) { - // TODO Auto-generated method stub - return false; - } - - @Override - public void fireJobAt(String name, Object job, Map<String, Serializable> config, Date date) throws Exception { - // TODO Auto-generated method stub - - } - - @Override - public boolean fireJob(Object job, Map<String, Serializable> config, int times, long period) { - // TODO Auto-generated method stub - return false; - } - - @Override - public void fireJob(Object job, Map<String, Serializable> config) throws Exception { - // TODO Auto-generated method stub - - } - - @Override - public void addPeriodicJob(String name, Object job, Map<String, Serializable> config, long period, - boolean canRunConcurrently, boolean startImmediate) throws Exception { - // TODO Auto-generated method stub - - } - - @Override - public void addPeriodicJob(String name, Object job, Map<String, Serializable> config, long period, - boolean canRunConcurrently) throws Exception { - // TODO Auto-generated method stub - - } - - @Override - public void addJob(String name, Object job, Map<String, Serializable> config, String schedulingExpression, - boolean canRunConcurrently) throws Exception { - // TODO Auto-generated method stub - - } - - @Override - public ScheduleOptions NOW(int times, long period) { - // TODO Auto-generated method stub - return null; - } - - @Override - public ScheduleOptions NOW() { - // TODO Auto-generated method stub - return null; - } - - @Override - public ScheduleOptions EXPR(String expression) { - // TODO Auto-generated method stub - return null; - } - - @Override - public ScheduleOptions AT(Date date, int times, long period) { - // TODO Auto-generated method stub - return null; - } - - @Override - public ScheduleOptions AT(Date date) { - // TODO Auto-generated method stub - return null; - } - }; - } - @Test public void testTopologyChange() throws Exception { // mock scheduler - final Scheduler scheduler = this.createScheduler(); final ChangeListener ccl = new ChangeListener(); // add change listener and verify ccl.init(1); final JobManagerConfiguration config = new JobManagerConfiguration(); - TestUtil.setFieldValue(config, "scheduler", scheduler); ((AtomicBoolean)TestUtil.getFieldValue(config, "active")).set(true); InitDelayingTopologyEventListener startupDelayListener = new InitDelayingTopologyEventListener(1, new TopologyEventListener() { - + @Override public void handleTopologyEvent(TopologyEvent event) { config.doHandleTopologyEvent(event); } - }, scheduler);; + }); TestUtil.setFieldValue(config, "startupDelayListener", startupDelayListener); config.addListener(ccl); diff --git a/src/test/java/org/apache/sling/event/it/AbstractJobHandlingTest.java b/src/test/java/org/apache/sling/event/it/AbstractJobHandlingTest.java index eb3de77..0146878 100644 --- a/src/test/java/org/apache/sling/event/it/AbstractJobHandlingTest.java +++ b/src/test/java/org/apache/sling/event/it/AbstractJobHandlingTest.java @@ -206,12 +206,13 @@ public abstract class AbstractJobHandlingTest { mavenBundle("org.apache.sling", "org.apache.sling.commons.json", "2.0.16"), mavenBundle("org.apache.sling", "org.apache.sling.commons.mime", "2.1.8"), mavenBundle("org.apache.sling", "org.apache.sling.commons.classloader", "1.3.2"), + mavenBundle("org.apache.sling", "org.apache.sling.commons.johnzon", "1.0.0"), mavenBundle("org.apache.sling", "org.apache.sling.commons.scheduler", "2.4.14"), mavenBundle("org.apache.sling", "org.apache.sling.commons.threads", "3.2.4"), mavenBundle("org.apache.sling", "org.apache.sling.auth.core", "1.3.12"), mavenBundle("org.apache.sling", "org.apache.sling.discovery.api", "1.0.2"), - mavenBundle("org.apache.sling", "org.apache.sling.discovery.commons", "1.0.12"), + mavenBundle("org.apache.sling", "org.apache.sling.discovery.commons", "1.0.20"), mavenBundle("org.apache.sling", "org.apache.sling.discovery.standalone", "1.0.2"), mavenBundle("org.apache.sling", "org.apache.sling.api", "2.14.2"), -- To stop receiving notification emails like this one, please contact "[email protected]" <[email protected]>.
