Author: indika
Date: Fri Oct 31 01:34:21 2008
New Revision: 709365
URL: http://svn.apache.org/viewvc?rev=709365&view=rev
Log:
add more logs and java docs
Modified:
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/DefaultTaskJobDetailFactory.java
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/DefaultTaskTriggerFactory.java
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/SynapseTaskException.java
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionFactory.java
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionRepository.java
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionRepositoryFactory.java
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionSerializer.java
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskJobDetailFactory.java
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskScheduler.java
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/service/TaskManagementService.java
Modified:
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/DefaultTaskJobDetailFactory.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/DefaultTaskJobDetailFactory.java?rev=709365&r1=709364&r2=709365&view=diff
==============================================================================
---
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/DefaultTaskJobDetailFactory.java
(original)
+++
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/DefaultTaskJobDetailFactory.java
Fri Oct 31 01:34:21 2008
@@ -18,19 +18,22 @@
*/
package org.apache.synapse.task;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
import org.quartz.Job;
import org.quartz.JobDataMap;
import org.quartz.JobDetail;
+import java.util.HashMap;
import java.util.Map;
import java.util.Set;
-import java.util.HashMap;
/**
* Default JobDetailFactory ships with synapse utils
*/
public class DefaultTaskJobDetailFactory implements TaskJobDetailFactory {
+ private static final Log log =
LogFactory.getLog(DefaultTaskJobDetailFactory.class);
/**
* @see TaskJobDetailFactory
@@ -38,11 +41,11 @@
public JobDetail createJobDetail(TaskDescription taskDescription,
Map<String, Object> resources, Class<Job> jobClass) {
if (taskDescription == null) {
- throw new SynapseTaskException("Task Description cannot be
found.");
+ throw new SynapseTaskException("Task Description cannot be
found.", log);
}
if (jobClass == null) {
- throw new SynapseTaskException("Job Class cannot be found.");
+ throw new SynapseTaskException("Job Class cannot be found.", log);
}
if (resources == null) {
@@ -54,7 +57,7 @@
String name = taskDescription.getName();
if (name == null || "".equals(name)) {
- throw new SynapseTaskException("Name cannot be found.");
+ throw new SynapseTaskException("Name cannot be found.", log);
}
jobDetail.setName(name);
Modified:
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/DefaultTaskTriggerFactory.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/DefaultTaskTriggerFactory.java?rev=709365&r1=709364&r2=709365&view=diff
==============================================================================
---
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/DefaultTaskTriggerFactory.java
(original)
+++
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/DefaultTaskTriggerFactory.java
Fri Oct 31 01:34:21 2008
@@ -18,10 +18,12 @@
*/
package org.apache.synapse.task;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
import org.quartz.CronTrigger;
+import org.quartz.SimpleTrigger;
import org.quartz.Trigger;
import org.quartz.TriggerUtils;
-import org.quartz.SimpleTrigger;
import java.text.ParseException;
import java.util.Date;
@@ -31,6 +33,7 @@
* Default TriggerFactory ship with synapse utils
*/
public class DefaultTaskTriggerFactory implements TaskTriggerFactory {
+ private static final Log log =
LogFactory.getLog(DefaultTaskTriggerFactory.class);
/**
* @see TaskTriggerFactory
@@ -39,9 +42,9 @@
String name = taskDescription.getName();
if (name == null || "".equals(name)) {
- throw new SynapseTaskException("Name of the Task cannot be null");
+ throw new SynapseTaskException("Name of the Task cannot be null",
log);
}
-
+
String cron = taskDescription.getCron();
int repeatCount = taskDescription.getCount();
long repeatInterval = taskDescription.getInterval();
@@ -62,12 +65,12 @@
cronTrigger.setCronExpression(cron);
trigger = cronTrigger;
} catch (ParseException e) {
- throw new SynapseTaskException("Error setting cron expression
: " + cron);
+ throw new SynapseTaskException("Error setting cron expression
: " + cron, log);
}
}
if (trigger == null) {
- throw new SynapseTaskException("Trigger is null for the Task
description : " + taskDescription);
+ throw new SynapseTaskException("Trigger is null for the Task
description : " + taskDescription, log);
}
if (startTime != null) {
Modified:
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/SynapseTaskException.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/SynapseTaskException.java?rev=709365&r1=709364&r2=709365&view=diff
==============================================================================
---
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/SynapseTaskException.java
(original)
+++
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/SynapseTaskException.java
Fri Oct 31 01:34:21 2008
@@ -24,7 +24,7 @@
*
*/
public class SynapseTaskException extends RuntimeException {
-
+
private static final long serialVersionUID = -7967803433723984038L;
public SynapseTaskException(String string) {
Modified:
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionFactory.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionFactory.java?rev=709365&r1=709364&r2=709365&view=diff
==============================================================================
---
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionFactory.java
(original)
+++
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionFactory.java
Fri Oct 31 01:34:21 2008
@@ -71,7 +71,8 @@
}
taskDescription.setTaskClass(classname);
} else {
- handleException("Syntax error in the Task : no task class
specified");
+ log.warn("TaskClass cannot be found." +
+ "Task implementation may need a task class if there is
no default one");
}
// set pinned server list
Modified:
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionRepository.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionRepository.java?rev=709365&r1=709364&r2=709365&view=diff
==============================================================================
---
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionRepository.java
(original)
+++
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionRepository.java
Fri Oct 31 01:34:21 2008
@@ -22,8 +22,8 @@
import org.apache.commons.logging.LogFactory;
import java.util.HashMap;
-import java.util.Map;
import java.util.Iterator;
+import java.util.Map;
/**
* Local repository for holds Task descriptions
@@ -46,6 +46,9 @@
validateName(name);
validateUniqueness(name);
+ if (log.isDebugEnabled()) {
+ log.debug("Storing a TaskDescription : " + taskDescription);
+ }
taskDescriptionMap.put(name, taskDescription);
}
@@ -58,17 +61,42 @@
*/
public TaskDescription getTaskDescription(String name) {
validateName(name);
- return taskDescriptionMap.get(name);
+ TaskDescription taskDescription = taskDescriptionMap.get(name);
+ if (taskDescription == null) {
+ if (log.isDebugEnabled()) {
+ log.debug("TaskDescription cannot be found for name :" + name
+ " , returning null");
+ }
+ } else {
+ if (log.isDebugEnabled()) {
+ log.debug("Returning TaskDescription : " + taskDescription);
+ }
+ }
+ return taskDescription;
}
/**
* Removing a TaskDescription
*
* @param name Name of the TaskDescription to be removed
+ * @return Removed TaskDescription instance
*/
- public void removeTaskDescription(String name) {
+ public TaskDescription removeTaskDescription(String name) {
validateName(name);
- taskDescriptionMap.remove(name);
+ if (log.isDebugEnabled()) {
+ log.debug("Removing a TaskDescription with name : " + name);
+ }
+ TaskDescription taskDescription = taskDescriptionMap.remove(name);
+ if (taskDescription == null) {
+ if (log.isDebugEnabled()) {
+ log.debug("There is no TaskDescription to be removed with name
: " + name);
+ }
+ } else {
+ if (log.isDebugEnabled()) {
+ log.debug("Removed TaskDescription : " + taskDescription);
+ }
+ }
+ return taskDescription;
+
}
/**
@@ -79,7 +107,7 @@
public Iterator<TaskDescription> getAllTaskDescriptions() {
return taskDescriptionMap.values().iterator();
}
-
+
/**
* Explicit check for determine whether there is a task description with a
name in interest
*
Modified:
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionRepositoryFactory.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionRepositoryFactory.java?rev=709365&r1=709364&r2=709365&view=diff
==============================================================================
---
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionRepositoryFactory.java
(original)
+++
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionRepositoryFactory.java
Fri Oct 31 01:34:21 2008
@@ -18,11 +18,15 @@
*/
package org.apache.synapse.task;
-import java.util.Map;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
import java.util.HashMap;
+import java.util.Map;
public class TaskDescriptionRepositoryFactory {
+ private static final Log log =
LogFactory.getLog(TaskDescriptionRepositoryFactory.class);
private final static Map<String, TaskDescriptionRepository> repositoryMap
= new HashMap<String, TaskDescriptionRepository>();
private TaskDescriptionRepositoryFactory() {
@@ -38,11 +42,14 @@
public static TaskDescriptionRepository
getTaskDescriptionRepository(String id) {
if (id == null || "".equals(id)) {
- throw new SynapseTaskException("Name cannot be found.");
+ throw new SynapseTaskException("Name cannot be found.", log);
}
TaskDescriptionRepository repository = repositoryMap.get(id);
if (repository == null) {
+ if (log.isDebugEnabled()) {
+ log.debug("Creating a TaskDescriptionRepository with id : " +
id);
+ }
repository = new TaskDescriptionRepository();
repositoryMap.put(id, repository);
}
Modified:
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionSerializer.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionSerializer.java?rev=709365&r1=709364&r2=709365&view=diff
==============================================================================
---
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionSerializer.java
(original)
+++
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskDescriptionSerializer.java
Fri Oct 31 01:34:21 2008
@@ -46,7 +46,11 @@
OMElement task = omFactory.createOMElement("task", targetNamespace);
task.addAttribute("name", taskDescription.getName(), NULL_OMNS);
- task.addAttribute("class", taskDescription.getTaskClass(), NULL_OMNS);
+
+ String taskClass = taskDescription.getTaskClass();
+ if (taskClass != null && !"".equals(taskClass)) {
+ task.addAttribute("class", taskDescription.getTaskClass(),
NULL_OMNS);
+ }
List pinnedServers = taskDescription.getPinnedServers();
if (pinnedServers != null && !pinnedServers.isEmpty()) {
Modified:
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskJobDetailFactory.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskJobDetailFactory.java?rev=709365&r1=709364&r2=709365&view=diff
==============================================================================
---
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskJobDetailFactory.java
(original)
+++
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskJobDetailFactory.java
Fri Oct 31 01:34:21 2008
@@ -38,5 +38,5 @@
* @param jobClass Job class
* @return JobDetail instance , if there are enough information to create
a instance , otherwise , return null
*/
- JobDetail createJobDetail(TaskDescription taskDescription,
Map<String,Object> resources, Class<Job> jobClass);
+ JobDetail createJobDetail(TaskDescription taskDescription, Map<String,
Object> resources, Class<Job> jobClass);
}
Modified:
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskScheduler.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskScheduler.java?rev=709365&r1=709364&r2=709365&view=diff
==============================================================================
---
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskScheduler.java
(original)
+++
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/TaskScheduler.java
Fri Oct 31 01:34:21 2008
@@ -132,7 +132,7 @@
* @param resources Any initial resources for task
* @param jobClass Quartz job class
*/
- public void scheduleTask(TaskDescription taskDescription,
Map<String,Object> resources, Class jobClass) {
+ public void scheduleTask(TaskDescription taskDescription, Map<String,
Object> resources, Class jobClass) {
validateInit();
validateStart();
Modified:
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/service/TaskManagementService.java
URL:
http://svn.apache.org/viewvc/synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/service/TaskManagementService.java?rev=709365&r1=709364&r2=709365&view=diff
==============================================================================
---
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/service/TaskManagementService.java
(original)
+++
synapse/trunk/java/modules/tasks/src/main/java/org/apache/synapse/task/service/TaskManagementService.java
Fri Oct 31 01:34:21 2008
@@ -18,25 +18,58 @@
*/
package org.apache.synapse.task.service;
-import org.apache.axiom.om.OMElement;
import org.apache.synapse.task.TaskDescription;
import java.util.List;
/**
- *
+ * A service for management of task
+ * Implementation can be a web service , OSGI service , etc
*/
public interface TaskManagementService {
+ /**
+ * Adding a TaskDescription instance
+ *
+ * @param taskDescription TaskDescription instance
+ */
void addTaskDescription(TaskDescription taskDescription);
+ /**
+ * Deletes a TaskDescription instance with given name
+ *
+ * @param name Name of the TaskDescription to be deleted
+ */
void deleteTaskDescription(String name);
+ /**
+ * Edit a TaskDescription
+ * Remove existing one with new one
+ *
+ * @param taskDescription New TaskDescription instance
+ */
void editTaskDescription(TaskDescription taskDescription);
+ /**
+ * Lists of all TaskDescription instances
+ *
+ * @return A List of TaskDescription
+ */
List<TaskDescription> getAllTaskDescriptions();
+ /**
+ * Get a TaskDescription instance with given name
+ *
+ * @param name Name of the TaskDescription instance to be returned
+ * @return TaskDescription instance
+ */
TaskDescription getTaskDescription(String name);
-
+
+ /**
+ * Explicit check for availability of a particular TaskDescription instance
+ *
+ * @param name Name of the TaskDescription instance
+ * @return Returns true if there is a TaskDescription instance with given
name , otherwise , false
+ */
boolean isContains(String name);
}