Author: cziegeler
Date: Mon May 22 05:12:09 2017
New Revision: 1795773

URL: http://svn.apache.org/viewvc?rev=1795773&view=rev
Log:
SLING-6823 : Use Timer instead of scheduler for delayed execution

Modified:
    sling/trunk/bundles/extensions/event/resource/pom.xml
    
sling/trunk/bundles/extensions/event/resource/src/main/java/org/apache/sling/event/impl/jobs/config/JobManagerConfiguration.java
    
sling/trunk/bundles/extensions/event/resource/src/test/java/org/apache/sling/event/impl/jobs/config/JobManagerConfigurationTest.java
    
sling/trunk/bundles/extensions/event/resource/src/test/java/org/apache/sling/event/it/AbstractJobHandlingTest.java

Modified: sling/trunk/bundles/extensions/event/resource/pom.xml
URL: 
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/event/resource/pom.xml?rev=1795773&r1=1795772&r2=1795773&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/event/resource/pom.xml (original)
+++ sling/trunk/bundles/extensions/event/resource/pom.xml Mon May 22 05:12:09 
2017
@@ -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>

Modified: 
sling/trunk/bundles/extensions/event/resource/src/main/java/org/apache/sling/event/impl/jobs/config/JobManagerConfiguration.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/event/resource/src/main/java/org/apache/sling/event/impl/jobs/config/JobManagerConfiguration.java?rev=1795773&r1=1795772&r2=1795773&view=diff
==============================================================================
--- 
sling/trunk/bundles/extensions/event/resource/src/main/java/org/apache/sling/event/impl/jobs/config/JobManagerConfiguration.java
 (original)
+++ 
sling/trunk/bundles/extensions/event/resource/src/main/java/org/apache/sling/event/impl/jobs/config/JobManagerConfiguration.java
 Mon May 22 05:12:09 2017
@@ -33,7 +33,6 @@ import org.apache.sling.api.resource.Per
 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);
         }

Modified: 
sling/trunk/bundles/extensions/event/resource/src/test/java/org/apache/sling/event/impl/jobs/config/JobManagerConfigurationTest.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/event/resource/src/test/java/org/apache/sling/event/impl/jobs/config/JobManagerConfigurationTest.java?rev=1795773&r1=1795772&r2=1795773&view=diff
==============================================================================
--- 
sling/trunk/bundles/extensions/event/resource/src/test/java/org/apache/sling/event/impl/jobs/config/JobManagerConfigurationTest.java
 (original)
+++ 
sling/trunk/bundles/extensions/event/resource/src/test/java/org/apache/sling/event/impl/jobs/config/JobManagerConfigurationTest.java
 Mon May 22 05:12:09 2017
@@ -22,21 +22,13 @@ import static org.junit.Assert.assertEqu
 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);

Modified: 
sling/trunk/bundles/extensions/event/resource/src/test/java/org/apache/sling/event/it/AbstractJobHandlingTest.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/event/resource/src/test/java/org/apache/sling/event/it/AbstractJobHandlingTest.java?rev=1795773&r1=1795772&r2=1795773&view=diff
==============================================================================
--- 
sling/trunk/bundles/extensions/event/resource/src/test/java/org/apache/sling/event/it/AbstractJobHandlingTest.java
 (original)
+++ 
sling/trunk/bundles/extensions/event/resource/src/test/java/org/apache/sling/event/it/AbstractJobHandlingTest.java
 Mon May 22 05:12:09 2017
@@ -206,12 +206,13 @@ public abstract class AbstractJobHandlin
                 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"),


Reply via email to