You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@archiva.apache.org by ma...@apache.org on 2018/04/09 20:09:32 UTC

[archiva-redback-components-spring-quartz] 10/46: [REDBACK-296] interface Scheduler the method schedulJob takes an implementation, not a interface Submitted by Adrien Lecharpentier.

This is an automated email from the ASF dual-hosted git repository.

martin_s pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/archiva-redback-components-spring-quartz.git

commit 1b8657190874c1f9770c265afdaf0b8780adcd86
Author: Olivier Lamy <ol...@apache.org>
AuthorDate: Sat Jul 28 20:56:25 2012 +0000

    [REDBACK-296] interface Scheduler the method schedulJob takes an implementation, not a interface
    Submitted by Adrien Lecharpentier.
    
    git-svn-id: https://svn.apache.org/repos/asf/archiva/redback/redback-components/trunk@1366772 13f79535-47bb-0310-9956-ffa450edef68
---
 .../components/scheduler/DefaultScheduler.java     | 23 +++++++++++++++-------
 .../redback/components/scheduler/Scheduler.java    |  3 ++-
 2 files changed, 18 insertions(+), 8 deletions(-)

diff --git a/src/main/java/org/apache/archiva/redback/components/scheduler/DefaultScheduler.java b/src/main/java/org/apache/archiva/redback/components/scheduler/DefaultScheduler.java
index d2f8553..ddf71e6 100644
--- a/src/main/java/org/apache/archiva/redback/components/scheduler/DefaultScheduler.java
+++ b/src/main/java/org/apache/archiva/redback/components/scheduler/DefaultScheduler.java
@@ -19,6 +19,7 @@ package org.apache.archiva.redback.components.scheduler;
  * under the License.
  */
 
+import org.quartz.JobDetail;
 import org.quartz.JobKey;
 import org.quartz.JobListener;
 import org.quartz.Matcher;
@@ -47,18 +48,19 @@ public class DefaultScheduler
 
     private StdScheduler scheduler;
 
-    public void scheduleJob( JobDetailImpl jobDetail, Trigger trigger )
+    public void scheduleJob( JobDetail jobDetail, Trigger trigger )
         throws SchedulerException
     {
-        if ( jobDetail == null || jobDetail.getName() == null )
+
+        if ( jobDetail == null || jobDetail.getKey() == null || jobDetail.getKey().getName() == null )
         {
             throw new SchedulerException( "No job or no job name - cannot schedule this job" );
         }
 
-        if ( jobExists( jobDetail.getName(), jobDetail.getGroup() ) )
+        if ( jobExists( jobDetail.getKey() ) )
         {
-            log.warn( "Will not schedule this job as a job {" + jobDetail.getName() + ":" + jobDetail.getGroup()
-                          + "} already exists." );
+            log.warn( "Will not schedule this job as a job {" + jobDetail.getKey().getName() + ":"
+                          + jobDetail.getKey().getGroup() + "} already exists." );
 
             return;
         }
@@ -89,7 +91,8 @@ public class DefaultScheduler
         scheduler.getListenerManager().addTriggerListener( listener, new AllMatch() );
     }
 
-    private static class AllMatch<R extends Key<?>> implements Matcher<R>
+    private static class AllMatch<R extends Key<?>>
+        implements Matcher<R>
     {
         public boolean isMatch( R key )
         {
@@ -153,7 +156,13 @@ public class DefaultScheduler
         throws SchedulerException
     {
 
-        return ( scheduler.getJobDetail( new JobKey( jobName, jobGroup ) ) != null );
+        return jobExists( new JobKey( jobName, jobGroup ) );
+    }
+
+    private boolean jobExists( JobKey jobKey )
+        throws SchedulerException
+    {
+        return scheduler.getJobDetail( jobKey ) != null;
     }
 
     public void shutdown( boolean waitForJobsToComplete )
diff --git a/src/main/java/org/apache/archiva/redback/components/scheduler/Scheduler.java b/src/main/java/org/apache/archiva/redback/components/scheduler/Scheduler.java
index 58dd6e8..722c405 100644
--- a/src/main/java/org/apache/archiva/redback/components/scheduler/Scheduler.java
+++ b/src/main/java/org/apache/archiva/redback/components/scheduler/Scheduler.java
@@ -19,6 +19,7 @@ package org.apache.archiva.redback.components.scheduler;
  * under the License.
  */
 
+import org.quartz.JobDetail;
 import org.quartz.JobListener;
 import org.quartz.SchedulerException;
 import org.quartz.Trigger;
@@ -30,7 +31,7 @@ import java.util.Properties;
 public interface Scheduler
 {
 
-    void scheduleJob( JobDetailImpl jobDetail, Trigger trigger )
+    void scheduleJob( JobDetail jobDetail, Trigger trigger )
         throws SchedulerException;
 
     /**

-- 
To stop receiving notification emails like this one, please contact
martin_s@apache.org.