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);