Hi Anjana, Yes that is the plan. Will be implementing this at the task adapter level.
Best Regards, Malaka On Wed, Oct 1, 2014 at 11:23 AM, Anjana Fernando <[email protected]> wrote: > Hi Malaka, > > Kasun sometime earlier asked me about this; And basically, from ntask, the > tasks will automatically start up when the server is started up. It does > not wait till a tenant is loaded or anything like that, it is automatically > handled by ntask. If the task itself wants some tenant specific > functionalities, the task implementation can load that. Basically, the ESB > has an task adapter implementation, which bridges the ntask task interface > and ESB task interfaces, in the adaptor, you can write the code to load any > tenant information as needed. > > Cheers, > Anjana. > > On Wed, Oct 1, 2014 at 8:58 AM, Malaka Silva <[email protected]> wrote: > >> Hi All, >> >> At the time of inbound EP code review Azeez has identified an issue with >> ntask integration in tenant mode. >> >> The problem is when a task is schedules in tenant mode this will not run >> until the tenant is loaded. >> >> Following is the solution I'm planning to implement. >> >> When a task is scheduled it'll put a entry in the registry, under tenant >> specific structure. At the time ESB starts, we are going to load the >> tenant, if they have one or more tasks scheduled. >> >> Above will solve the task implementation and polling inbound EPs issue in >> tenant mode. But the issue will still exists for listening Inbound EPs. >> >> Let me know your feedback on this? >> >> Best Regards, >> Malaka >> >> On Tue, May 20, 2014 at 5:37 PM, Ishan Jayawardena <[email protected]> >> wrote: >> >>> We have implemented the $subject and it is available in the ESB's git >>> repo. As we initially planned we will be releasing this new task manager >>> with our next release. >>> >>> Thanks, >>> Ishan. >>> >>> >>> On Mon, Apr 21, 2014 at 5:27 PM, Ishan Jayawardena <[email protected]> >>> wrote: >>> >>>> Today we had a discussion to review the current implementation of >>>> $subject. >>>> We have developed two task providers/managers to manage quartz and >>>> ntask based task types. The correct task manager gets registered according >>>> to the synapse configuration, during the startup. When a user deploys a new >>>> task through the UI, Synapse schedules a task in the registered task >>>> manager. >>>> >>>> Although each task manager is capable of executing its own task type, >>>> currently none of the task managers can execute tasks of a different type. >>>> Due to this, the new ntask task manager cannot execute existing tasks such >>>> as Synapse MessageInjector. We cannot support this yet without Synapse >>>> having a dependency to ntask component. At the moment we are looking into a >>>> solution to this problem. >>>> >>>> At the same time, we are working on the inbound endpoint (VFS) to make >>>> it reuse the same ntask provider that we developed. >>>> >>>> Thanks, >>>> Ishan. >>>> >>>> >>>> On Mon, Apr 21, 2014 at 9:42 AM, Ishan Jayawardena <[email protected]> >>>> wrote: >>>> >>>>> Hi Kasun, >>>>> We managed to solve the issue and now we are working on the final >>>>> stage of the development. We will complete this within this week. >>>>> Thanks, >>>>> Ishan. >>>>> >>>>> >>>>> On Tue, Apr 15, 2014 at 9:48 AM, Kasun Indrasiri <[email protected]> >>>>> wrote: >>>>> >>>>>> Did you check whether the required packages are osgi imported >>>>>> properly? >>>>>> On a separate note, what's the ETA of a working deliverable of this? >>>>>> >>>>>> >>>>>> On Sun, Apr 13, 2014 at 12:43 PM, Anjana Fernando <[email protected]> >>>>>> wrote: >>>>>> >>>>>>> Obviously, check if that class is available and where it is referred >>>>>>> from in the code. As I remember, there isn't a package called >>>>>>> "ntaskint", >>>>>>> so check where this is coming from. >>>>>>> >>>>>>> Cheers, >>>>>>> Anjana. >>>>>>> >>>>>>> >>>>>>> On Sat, Apr 12, 2014 at 6:46 AM, Ishan Jayawardena <[email protected]> >>>>>>> wrote: >>>>>>> >>>>>>>> We developed the quartz task manager and we are currently working >>>>>>>> on the ntask task manager. While developing the task handling component >>>>>>>> that uses ntask, we observed that we cannot schedule a task in it due >>>>>>>> to a >>>>>>>> class not found error. See the below error message. The ntask component >>>>>>>> (which is used by the component that we are currently writing) cannot >>>>>>>> load >>>>>>>> the actual task implementation. Does anyone know how to get rid of >>>>>>>> this? >>>>>>>> >>>>>>>> java.lang.ClassNotFoundException: class >>>>>>>> org.wso2.carbon.ntaskint.core.Task >>>>>>>> at >>>>>>>> org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501) >>>>>>>> at >>>>>>>> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421) >>>>>>>> at >>>>>>>> org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412) >>>>>>>> at >>>>>>>> org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) >>>>>>>> at java.lang.ClassLoader.loadClass(ClassLoader.java:247) >>>>>>>> at >>>>>>>> org.wso2.carbon.ntask.core.impl.TaskQuartzJobAdapter.execute(TaskQuartzJobAdapter.java:58) >>>>>>>> at org.quartz.core.JobRunShell.run(JobRunShell.java:213) >>>>>>>> at >>>>>>>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439) >>>>>>>> at >>>>>>>> java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) >>>>>>>> at java.util.concurrent.FutureTask.run(FutureTask.java:138) >>>>>>>> at >>>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) >>>>>>>> at >>>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) >>>>>>>> at java.lang.Thread.run(Thread.java:662) >>>>>>>> Thanks, >>>>>>>> Ishan. >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Mon, Apr 7, 2014 at 9:11 AM, Anjana Fernando <[email protected]> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> Hi Paul, >>>>>>>>> >>>>>>>>> Task Server is actually another server itself. NTask component is >>>>>>>>> the task scheduling component we put to all our Carbon server when we >>>>>>>>> need >>>>>>>>> distributed task scheduling functionality. That component support >>>>>>>>> scheduling tasks in a standalone manner (in a single server), or in a >>>>>>>>> clustered mode for the distributed nature (it does the coordination >>>>>>>>> using >>>>>>>>> Hazelcast), or else, also a "remote" mode where it can interface with >>>>>>>>> an >>>>>>>>> external Task Server. >>>>>>>>> >>>>>>>>> So basically the full required functionality of distributed tasks >>>>>>>>> can be achieved with the ntask component working in the clustered >>>>>>>>> mode, >>>>>>>>> where it identifies all the participating servers in the cluster and >>>>>>>>> do the >>>>>>>>> proper fail-over/load balanced scheduling of scheduled tasks. And they >>>>>>>>> schedule the tasks themselves using their internal Quartz >>>>>>>>> functionality. >>>>>>>>> With TS, all the task triggering is offloaded to TS, where it will be >>>>>>>>> sending HTTP messages to each server saying to execute the tasks. This >>>>>>>>> should happen through the LB as I explained in the earlier mail. >>>>>>>>> >>>>>>>>> So basically Task Server = ntask component + remote tasks >>>>>>>>> component. What any other Carbon server will need is just the ntask >>>>>>>>> component for full task scheduling functionality. >>>>>>>>> >>>>>>>>> Cheers, >>>>>>>>> Anjana. >>>>>>>>> >>>>>>>>> >>>>>>>>> On Sat, Apr 5, 2014 at 1:43 PM, Paul Fremantle <[email protected]> >>>>>>>>> wrote: >>>>>>>>> >>>>>>>>>> Can someone clarify? I'm lost but I really don't understand why >>>>>>>>>> we are creating any other approach than task server. It is the only >>>>>>>>>> approach that scales clearly. Is our task server code too >>>>>>>>>> heavyweight? >>>>>>>>>> >>>>>>>>>> Paul >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On 5 April 2014 08:47, Chanaka Fernando <[email protected]> >>>>>>>>>> wrote: >>>>>>>>>> >>>>>>>>>>> Hi Kasun/Anjana, >>>>>>>>>>> >>>>>>>>>>> I think what Anjana mentioned and Ishan mentioned are somewhat >>>>>>>>>>> converge to same idea (even though they looks different). >>>>>>>>>>> >>>>>>>>>>> What we have discussed and agreed was that we are developing a >>>>>>>>>>> separate carbon-component which is used for executing the ntask >>>>>>>>>>> component. >>>>>>>>>>> Since we need a common interface to support both the existing >>>>>>>>>>> quartz based >>>>>>>>>>> synapse-tasks implementation and the ntask component, we have >>>>>>>>>>> defined the >>>>>>>>>>> TaskManager interface. >>>>>>>>>>> >>>>>>>>>>> When ESB is loading the synapse configuration, it will create an >>>>>>>>>>> object of type TaskManager according to the Task provider mentioned >>>>>>>>>>> in the >>>>>>>>>>> configuration. This task manager object will delegate the >>>>>>>>>>> scheduling and >>>>>>>>>>> other task related stuff to the respective implementation of the >>>>>>>>>>> TaskManager (which can be either QuartzTaskManager or NTaskManager). >>>>>>>>>>> >>>>>>>>>>> @Kasun/Anjana: are we missing something here? >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> Thanks, >>>>>>>>>>> Chanaka >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Sat, Apr 5, 2014 at 9:32 AM, Kasun Indrasiri <[email protected]> >>>>>>>>>>> wrote: >>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> On Sat, Apr 5, 2014 at 9:22 AM, Anjana Fernando < >>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Hi Ishan, >>>>>>>>>>>>> >>>>>>>>>>>>> On Sat, Apr 5, 2014 at 7:33 AM, Ishan Jayawardena < >>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> 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> >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> I guess the NTask based task manager implementation should >>>>>>>>>>>>> have a WSO2 package name, since it is a WSO2 specific >>>>>>>>>>>>> implementation, and >>>>>>>>>>>>> something you will not ship with Synapse. >>>>>>>>>>>>> >>>>>>>>>>>>> Exactly. >>>>>>>>>>>> I've mentioned this several times in our offline discussions as >>>>>>>>>>>> well.. Why are putting a dependency from synapse to a WSO2 >>>>>>>>>>>> component? >>>>>>>>>>>> Again... have a look at how we have integrated synapse registry >>>>>>>>>>>> with WSO2 >>>>>>>>>>>> registry. This must be implemented as a carbon component. >>>>>>>>>>>> >>>>>>>>>>>> Cheers, >>>>>>>>>>>>> Anjana. >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> 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 >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> -- >>>>>>>>>>>>> *Anjana Fernando* >>>>>>>>>>>>> Technical Lead >>>>>>>>>>>>> WSO2 Inc. | http://wso2.com >>>>>>>>>>>>> lean . enterprise . middleware >>>>>>>>>>>>> >>>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>>> 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/ >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> -- >>>>>>>>>>> Chanaka Fernando >>>>>>>>>>> >>>>>>>>>>> Technical Lead >>>>>>>>>>> WSO2, Inc.; http://wso2.com >>>>>>>>>>> lean.enterprise.middleware >>>>>>>>>>> >>>>>>>>>>> mobile: +94 773337238 >>>>>>>>>>> Blog : http://soatutorials.blogspot.com >>>>>>>>>>> LinkedIn:http://www.linkedin.com/pub/chanaka-fernando/19/a20/5b0 >>>>>>>>>>> Twitter:https://twitter.com/chanakaudaya >>>>>>>>>>> Wordpress:http://chanakaudaya.wordpress.com >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> _______________________________________________ >>>>>>>>>>> Architecture mailing list >>>>>>>>>>> [email protected] >>>>>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> Paul Fremantle >>>>>>>>>> CTO and Co-Founder, WSO2 >>>>>>>>>> OASIS WS-RX TC Co-chair, Apache Member >>>>>>>>>> >>>>>>>>>> UK: +44 207 096 0336 >>>>>>>>>> US: +1 646 595 7614 >>>>>>>>>> >>>>>>>>>> blog: http://pzf.fremantle.org >>>>>>>>>> twitter.com/pzfreo >>>>>>>>>> [email protected] >>>>>>>>>> >>>>>>>>>> wso2.com Lean Enterprise Middleware >>>>>>>>>> >>>>>>>>>> Disclaimer: This communication may contain privileged or other >>>>>>>>>> confidential information and is intended exclusively for the >>>>>>>>>> addressee/s. >>>>>>>>>> If you are not the intended recipient/s, or believe that you may have >>>>>>>>>> received this communication in error, please reply to the sender >>>>>>>>>> indicating >>>>>>>>>> that fact and delete the copy you received and in addition, you >>>>>>>>>> should not >>>>>>>>>> print, copy, retransmit, disseminate, or otherwise use the >>>>>>>>>> information >>>>>>>>>> contained in this communication. Internet communications cannot be >>>>>>>>>> guaranteed to be timely, secure, error or virus-free. The sender >>>>>>>>>> does not >>>>>>>>>> accept liability for any errors or omissions. >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> *Anjana Fernando* >>>>>>>>> Technical Lead >>>>>>>>> WSO2 Inc. | http://wso2.com >>>>>>>>> lean . enterprise . middleware >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> Ishan Jayawardena >>>>>>>> Senior Software Engineer >>>>>>>> Mobile: +94 (77) 408 2330 >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Anjana Fernando* >>>>>>> Technical Lead >>>>>>> WSO2 Inc. | http://wso2.com >>>>>>> lean . enterprise . middleware >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> Kasun Indrasiri >>>>>> Software Architect >>>>>> WSO2, Inc.; http://wso2.com >>>>>> lean.enterprise.middleware >>>>>> >>>>>> cell: +94 77 556 5206 >>>>>> Blog : http://kasunpanorama.blogspot.com/ >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Ishan Jayawardena >>>>> Senior Software Engineer >>>>> Mobile: +94 (77) 408 2330 >>>>> >>>> >>>> >>>> >>>> -- >>>> Ishan Jayawardena >>>> Senior Software Engineer >>>> Mobile: +94 (77) 408 2330 >>>> >>> >>> >>> >>> -- >>> Ishan Jayawardena >>> Senior Software Engineer >>> Mobile: +94 (77) 408 2330 >>> >> >> >> >> -- >> >> Best Regards, >> >> Malaka Silva >> Senior Tech Lead >> M: +94 777 219 791 >> Tel : 94 11 214 5345 >> Fax :94 11 2145300 >> Skype : malaka.sampath.silva >> LinkedIn : http://www.linkedin.com/pub/malaka-silva/6/33/77 >> Blog : http://mrmalakasilva.blogspot.com/ >> >> WSO2, Inc. >> lean . enterprise . middleware >> http://www.wso2.com/ >> http://www.wso2.com/about/team/malaka-silva/ >> <http://wso2.com/about/team/malaka-silva/> >> >> Save a tree -Conserve nature & Save the world for your future. Print this >> email only if it is absolutely necessary. >> > > > > -- > *Anjana Fernando* > Senior Technical Lead > WSO2 Inc. | http://wso2.com > lean . enterprise . middleware > -- Best Regards, Malaka Silva Senior Tech Lead M: +94 777 219 791 Tel : 94 11 214 5345 Fax :94 11 2145300 Skype : malaka.sampath.silva LinkedIn : http://www.linkedin.com/pub/malaka-silva/6/33/77 Blog : http://mrmalakasilva.blogspot.com/ WSO2, Inc. lean . enterprise . middleware http://www.wso2.com/ http://www.wso2.com/about/team/malaka-silva/ <http://wso2.com/about/team/malaka-silva/> Save a tree -Conserve nature & Save the world for your future. Print this email only if it is absolutely necessary.
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
