Currently, we have developed following design and started to work on it.

Synapse will have defined the TaskManager, and Task interfaces whose
implementations will provide the concrete tasks and management of those
tasks depending on the scheduler(ie quartz or ntask).
For instance, for inbuilt quartz based task scheduling, we
will refactor and develop a quartz task manager, and a task type while
maintaining the compatibility with existing tasks.
Additionally, we are developing an ntask based task manager.

We will introduce the following new element to synapse.xml that provides
the class name of the TaskManager implementation so that Synapse can create
a single task manger object when it starts up.
<definitions xmlns="http://ws.apache.org/ns/synapse";>
    <taskExecutor provider="org.apache.synapse.task.NTaskTaskManager"/>
</definitions>

The class name of the Task implementation can be obtained at the time the
user adds a new task through the UI. By using that class name, Synapse can
create the task object, initialize it and hand it over to the task manager
instance to schedule.

Thanks,
Ishan.



On Mon, Mar 24, 2014 at 8:23 PM, Isuru Udana <[email protected]> wrote:

>
>
>
> On Mon, Mar 24, 2014 at 8:04 PM, Sagara Gunathunga <[email protected]>wrote:
>
>>
>>
>>
>> On Mon, Mar 24, 2014 at 11:52 AM, Kasun Indrasiri <[email protected]> wrote:
>>
>>> I would like to clarify the objective of this task:
>>>
>>> - Introduce the concept of a Task provider in to ESB. Which means any
>>> existing task (task config) can be ran on the available task provider( this
>>> can be ntask, quartz or anything)
>>>
>>
>>  Is this means we continue to support Quartz as well ?
>>
> Yes. Idea is to introduce an interface at the synapse level which
> providers can implement. Quartz based implementation is one of the possible
> task provider implementation.
>
>> IMO for simple use cases it's important to continue support for Quartz
>>  while Task server may fit into complex use cases.
>>
>> Thanks !
>>
>>
>>> - However, the recipes concept is completely transparent at Synapse
>>> level. Simply we don't have to thing about recipes when doing this.
>>> Recipe(or Dish) can be consider as a place where specific logic is executed
>>> on top of generic task.
>>> - All the details on sequence deployment, template invocation is not
>>> related to ESB task provider concept.
>>>
>>>
>>> On Sat, Mar 22, 2014 at 7:36 AM, Ishan Jayawardena <[email protected]>wrote:
>>>
>>>> I am working on $subject to support scheduled invocation of recipes in
>>>> the ESB. This mainly includes replacing the existing quartz based task
>>>> scheduler with ntask scheduler. The new task type is based on ntask, and it
>>>> will be added as a new component in the mediation category. We can use the
>>>> existing task management UI of the ESB to add and manage tasks.
>>>>
>>>> In addition to the task schedule information, template name and
>>>> template parameter values, a special property must be added to the task
>>>> parameter list at the time of task creation so that the task can invoke the
>>>> template within its execute method.
>>>>
>>>> The task,
>>>>      reads properties and builds a synapse sequence by inserting the
>>>> recipe template in it,
>>>>      deploys the sequence into synapse,
>>>>      injects a message to the above sequence to invoke the template.
>>>>
>>>> Thanks,
>>>> Ishan.
>>>>
>>>> --
>>>> Ishan Jayawardena
>>>> Senior Software Engineer
>>>> Mobile: +94 (77) 408 2330
>>>>
>>>> _______________________________________________
>>>> Architecture mailing list
>>>> [email protected]
>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>>
>>>>
>>>
>>>
>>> --
>>> Kasun Indrasiri
>>> Software Architect
>>> WSO2, Inc.; http://wso2.com
>>> lean.enterprise.middleware
>>>
>>> cell: +94 77 556 5206
>>> Blog : http://kasunpanorama.blogspot.com/
>>>
>>> _______________________________________________
>>> Architecture mailing list
>>> [email protected]
>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>>>
>>>
>>
>>
>> --
>> Sagara Gunathunga
>>
>> Senior Technical Lead; WSO2, Inc.;  http://wso2.com
>> V.P Apache Web Services;    http://ws.apache.org/
>> Linkedin; http://www.linkedin.com/in/ssagara
>> Blog ;  http://ssagara.blogspot.com
>>
>>
>
>
> --
> *Isuru Udana*
> Senior
> * Software Engineer*
> WSO2 Inc.; http://wso2.com
> email: [email protected] cell: +94 77 3791887
> blog: http://mytecheye.blogspot.com/
> twitter: http://twitter.com/isudana
>
> _______________________________________________
> Architecture mailing list
> [email protected]
> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
>
>


-- 
Ishan Jayawardena
Senior Software Engineer
Mobile: +94 (77) 408 2330
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to