Sorry meant to send the SVN locations, they are, * https://svn.wso2.org/repos/wso2/trunk/carbon/components/data-services/org.wso2.carbon.dataservices.core/src/main/java/org/wso2/carbon/dataservices/core/task * https://svn.wso2.org/repos/wso2/trunk/carbon/components/data-services/org.wso2.carbon.dataservices.core/src/main/java/org/wso2/carbon/dataservices/core/admin/DataServiceAdmin.java
Cheers, Anjana. On Mon, Dec 12, 2011 at 4:53 PM, Anjana Fernando <[email protected]> wrote: > Below contains the DSS classes that are used for implementing the DSS > scheduled tasks based on ntask. > > * Package > "/media/data/dev/wso2/carbon/trunk/components/data-services/org.wso2.carbon.dataservices.core/src/main/java/org/wso2/carbon/dataservices/core/task". > * DSS Admin Service > "/media/data/dev/wso2/carbon/trunk/components/data-services/org.wso2.carbon.dataservices.core/src/main/java/org/wso2/carbon/dataservices/core/admin/DataServiceAdmin.java", > check methods "isTaskScheduled", "deleteTask", "rescheduleTask", > "scheduleTask", "getTaskInfo" and "getAllTaskNames". > > Cheers, > Anjana. > > > On Fri, Dec 9, 2011 at 6:54 PM, Anjana Fernando <[email protected]> wrote: > >> Hi, >> >> Lately I've been writing a new task component "ntask", which is directly >> based on quartz2 rather than having a dependency on Synapse, and also uses >> the coordination component for controlling distributing tasks in a cluster. >> To facilitate this, the group communication ability in the coordination >> component has been improved to contain a synchronous sendReceive call to >> implement RPC scenarios between peers in the group, which is needed in the >> task component. The flow simply works in the following steps, >> >> * Register a task description "TaskInfo", which contains task trigger >> information as well. >> * Schedule a registered task with the given name. >> * Related task controlling operations like, reschedule, pause, resume, >> delete, get status, list tasks in a specific server etc.. >> >> The task functionality is mainly done using a "TaskManager" interface, >> which represents a task manager for a specific task type for a specific >> tenant. For example, for tasks to not to clash in a server which has ESB >> tasks and DSS tasks, the task type can be given to distinguish between the >> two. When a task is registered, the target server, the task needs to be >> scheduled can be specified by giving an implementation of the >> "TaskLocationResolver" interface, where given the task context, it must >> return the location of the server. There's a default task location resolver >> class used otherwise when not explicitly given, which simply scheduled all >> the tasks in an round robin fashion among the cluster. The failover >> scenarios are implemented where, if a node goes down, the leader node will >> identify it and schedule the orphaned tasks between remaining servers. >> Also, if the leader node itself goes down, another node will become the >> leader and reschedule the missing tasks and keep track of the running ones. >> >> The ntask component has a module called "solutions", which will contain >> most often used task implementation. I've added a simple web service >> invocation task implementation there, where in DSS itself, we derive that >> to create our own tasks. So if there are simple task implementations, they >> can be put into the solutions module, for reuse. >> >> The current ntask implementation is in-cooperated into the upcoming DSS >> 2.6.3 release, so the new tasks functionality can be tested from that if >> anyone's interested. >> >> Cheers, >> Anjana. >> >> -- >> *Anjana Fernando* >> Senior Software Engineer >> WSO2 Inc. | http://wso2.com >> lean . enterprise . middleware >> > > > > -- > *Anjana Fernando* > Senior Software Engineer > WSO2 Inc. | http://wso2.com > lean . enterprise . middleware > -- *Anjana Fernando* Senior Software Engineer WSO2 Inc. | http://wso2.com lean . enterprise . middleware
_______________________________________________ Carbon-dev mailing list [email protected] http://mail.wso2.org/cgi-bin/mailman/listinfo/carbon-dev
