You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2013/05/14 18:32:10 UTC

svn commit: r1482437 - in /sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event: impl/jobs/JobManagerImpl.java impl/jobs/Utility.java jobs/JobManager.java

Author: cziegeler
Date: Tue May 14 16:32:10 2013
New Revision: 1482437

URL: http://svn.apache.org/r1482437
Log:
SLING-2867 Improve implementation : Improve logging and check topic when a new job is added

Modified:
    sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/impl/jobs/JobManagerImpl.java
    sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/impl/jobs/Utility.java
    sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/jobs/JobManager.java

Modified: sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/impl/jobs/JobManagerImpl.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/impl/jobs/JobManagerImpl.java?rev=1482437&r1=1482436&r2=1482437&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/impl/jobs/JobManagerImpl.java (original)
+++ sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/impl/jobs/JobManagerImpl.java Tue May 14 16:32:10 2013
@@ -508,10 +508,9 @@ public class JobManagerImpl
                             jobProperties);
                 } else {
                     if ( errorMessage != null ) {
-                        logger.warn(errorMessage + " : " + resource.getPath());
-                    }
-                    if ( jobId == null ) {
-                        logger.warn("Discarding job - no job id found : " + resource.getPath());
+                        logger.warn("{} : {}", errorMessage, resource.getPath());
+                    } else if ( jobId == null ) {
+                        logger.warn("Discarding job - no job id found : {}", resource.getPath());
                     }
                     // remove the job as the topic is invalid anyway
                     try {
@@ -773,6 +772,11 @@ public class JobManagerImpl
      */
     @Override
     public Job addJob(final String topic, final String name, final Map<String, Object> properties) {
+        final String errorMessage = Utility.checkJobTopic(topic);
+        if ( errorMessage != null ) {
+            logger.warn("{}", errorMessage);
+            return null;
+        }
         Job result = this.addJobInteral(topic, name, properties);
         if ( result == null && name != null ) {
             result = this.getJobByName(name);
@@ -1272,6 +1276,9 @@ public class JobManagerImpl
 
         // create path and resource
         properties.put(ResourceResolver.PROPERTY_RESOURCE_TYPE, ResourceHelper.RESOURCE_TYPE_JOB);
+        if ( logger.isDebugEnabled() ) {
+            logger.debug("Storing new job {} at {}", properties, path);
+        }
         ResourceHelper.getOrCreateResource(resolver,
                 path,
                 properties);

Modified: sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/impl/jobs/Utility.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/impl/jobs/Utility.java?rev=1482437&r1=1482436&r2=1482437&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/impl/jobs/Utility.java (original)
+++ sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/impl/jobs/Utility.java Tue May 14 16:32:10 2013
@@ -52,15 +52,15 @@ public abstract class Utility {
                     // we just have to catch it
                 }
                 if ( !topicIsCorrect ) {
-                    message = "Discarding job : job has an illegal job topic";
+                    message = "Discarding job - job has an illegal job topic";
                 } else {
                     message = null;
                 }
             } else {
-                message = "Discarding job : job topic is not of type string";
+                message = "Discarding job - job topic is not of type string";
             }
         } else {
-            message = "Discarding job : job topic is missing";
+            message = "Discarding job - job topic is missing";
         }
         return message;
     }

Modified: sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/jobs/JobManager.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/jobs/JobManager.java?rev=1482437&r1=1482436&r2=1482437&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/jobs/JobManager.java (original)
+++ sling/trunk/bundles/extensions/event/src/main/java/org/apache/sling/event/jobs/JobManager.java Tue May 14 16:32:10 2013
@@ -146,10 +146,13 @@ public interface JobManager {
 
     /**
      * Add a new job
-     * @param topic The job topic,
+     *
+     * If the topic is missing or illegal, no job is created and <code>null</code> is returned.
+     *
+     * @param topic The required job topic.
      * @param name  Optional unique job name
      * @param properties Optional job properties
-     * @return The new job
+     * @return The new job - or <code>null</code> if the job could not be created.
      * @since 1.2
      */
     Job addJob(String topic, String name, Map<String, Object> properties);