I've committed this CarbonContexCreator class.  Miyuru and Sanjeewa test
your cases and let me know if there any change to be done.

Thanks,
Sameera.


On Tue, Jul 16, 2013 at 12:10 PM, Miyuru Wanninayaka <[email protected]>wrote:

> We will move this hander kernel as this handler is required for all
> products in non-http transport scenarios too.
>
>
> On Tue, Jul 16, 2013 at 11:25 AM, Miyuru Wanninayaka <[email protected]>wrote:
>
>> Hi all,
>>
>> I was able to get this working with axis2 handler and small change to
>> synapse-greg registry bridge.
>> Now both GReg integration and security scenarios working fine.
>>
>> Still we need to assess overhead of setting thread local in every message.
>>
>>
>> On Fri, Jul 12, 2013 at 11:40 AM, Amila Suriarachchi <[email protected]>wrote:
>>
>>>
>>>
>>>
>>> On Fri, Jul 12, 2013 at 11:33 AM, Miyuru Wanninayaka <[email protected]>wrote:
>>>
>>>> Hi Amila,
>>>>
>>>> On Fri, Jul 12, 2013 at 11:27 AM, Amila Suriarachchi <[email protected]>wrote:
>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Fri, Jul 12, 2013 at 11:17 AM, Miyuru Wanninayaka 
>>>>> <[email protected]>wrote:
>>>>>
>>>>>> Hi Dushan,
>>>>>>
>>>>>> Dispatcher/Handler will only help in cases where message come to
>>>>>> synapse from outside.
>>>>>>
>>>>>> For other cases, we need to develop a extension point in synapse
>>>>>> which invokes after a thread spawn to set CC as thread local.
>>>>>>
>>>>>> Seems we can get AxisConfiguration in any place which synapse create
>>>>>> a new thread. So we can develop a handler API which has something like
>>>>>>
>>>>>> public void populateThreadLocal(AxisConfiguration) or something
>>>>>>
>>>>>> which figure out tenant information and  polulate CC.
>>>>>>
>>>>>> @Azeez, can we figure out tenant information by looking at
>>>>>> AxisConfiguration?
>>>>>> Using something like AxisConfiguration.getRepository()
>>>>>
>>>>>
>>>>> In here you need to think about how to get the tenant information from
>>>>> the request message. Always we need to get the tenant information from the
>>>>> request message and set to thread local. There are two ways
>>>>>
>>>>> 1. From the request URI
>>>>> 2. user name - user can have tenant qualified name
>>>>>
>>>>
>>>> both these are not available for pooling/non-http transports
>>>>
>>>
>>> We don't support those transports for MT. Those transports only for ST.
>>> So we can assume always ST for those transports.
>>>
>>> thanks,
>>> Amila.
>>>
>>>>
>>>>
>>>>> thanks,
>>>>> Amila.
>>>>>
>>>>>>
>>>>>>
>>>>>> On Fri, Jul 12, 2013 at 10:19 AM, Dushan Abeyruwan 
>>>>>> <[email protected]>wrote:
>>>>>>
>>>>>>> Hi Miyru,
>>>>>>>    I think we can intercept the Carbon context by writing a dispatch
>>>>>>> in DispatchPhase this can be a component whose suppose to resides 
>>>>>>> outside
>>>>>>> synapse.
>>>>>>>
>>>>>>>
>>>>>>> Cheers
>>>>>>> Dushan
>>>>>>>
>>>>>>>
>>>>>>> On Fri, Jul 12, 2013 at 9:58 AM, Afkham Azeez <[email protected]>wrote:
>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> On Fri, Jul 12, 2013 at 9:54 AM, Miyuru Wanninayaka <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Fri, Jul 12, 2013 at 9:36 AM, Afkham Azeez <[email protected]>wrote:
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Fri, Jul 12, 2013 at 7:28 AM, Miyuru Wanninayaka <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi Azeez,
>>>>>>>>>>>
>>>>>>>>>>> Sorry, we were not properly following dev@ discussions recently
>>>>>>>>>>> as team was very busy with ESB 4.7 release.
>>>>>>>>>>>
>>>>>>>>>>> Yes we can set proper CC as thread local in request path via
>>>>>>>>>>> handler for NIO transports by looking at To address. But how this 
>>>>>>>>>>> can
>>>>>>>>>>> implement in generic manner for other transport ( JMS, VFS....). 
>>>>>>>>>>> May be
>>>>>>>>>>> since other transports does not support MT anyway, we can always 
>>>>>>>>>>> set ST CC
>>>>>>>>>>> for non http transports?
>>>>>>>>>>>
>>>>>>>>>>> Also how we can handle thread switching in response path of NIO?
>>>>>>>>>>> Handler will not help in response path.
>>>>>>>>>>>
>>>>>>>>>>> Also there are some mediation threads spawns within synapse
>>>>>>>>>>> without going through axis2 flow such as
>>>>>>>>>>> * Synapse tasks
>>>>>>>>>>> * Message processors
>>>>>>>>>>> * Priority executors
>>>>>>>>>>> * Clone and iterate mediators
>>>>>>>>>>>
>>>>>>>>>>> How can we set CC in these cases?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Any bit of execution has to to be associated with some tenant. It
>>>>>>>>>> is true for everything listed above. We need to track things like 
>>>>>>>>>> how much
>>>>>>>>>> CPU time each tenant consumed and so on. So you need to identify the
>>>>>>>>>> relevant plug points, and inject the proper CC.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Only problem is above mentioned flows cannot intercept from
>>>>>>>>> outside of synapse. In such case do we have alternative than writing 
>>>>>>>>> carbon
>>>>>>>>> specific code inside synapse?
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> No. This is why interfaces are needed. We have done this enough &
>>>>>>>> more time for Axis2, without writing WSO2 specific code in Axis2.
>>>>>>>>
>>>>>>>>
>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Thu, Jul 11, 2013 at 9:50 PM, Afkham Azeez <[email protected]>wrote:
>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Thu, Jul 11, 2013 at 7:59 PM, Miyuru Wanninayaka <
>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> ESB does not sets Carbon Context as thread local because
>>>>>>>>>>>>> PTT/NHTTP threads are totally under synapse. AFIK only servlet 
>>>>>>>>>>>>> transport
>>>>>>>>>>>>> sets CC as a thread local.
>>>>>>>>>>>>>
>>>>>>>>>>>>> In 4.1.0 branch this is working fine without setting CC as
>>>>>>>>>>>>> thread local. Did something changed in trunk?
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> Please keep yourself up to date on what is going on at the
>>>>>>>>>>>> platform level. Platform level enhancements have an effect on all 
>>>>>>>>>>>> products.
>>>>>>>>>>>> There have been several mail threads on this. you should be able 
>>>>>>>>>>>> to define
>>>>>>>>>>>> a handler which sets the proper CC into the Thread.
>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Thu, Jul 11, 2013 at 7:49 PM, Amila Suriarachchi <
>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Thu, Jul 11, 2013 at 7:31 PM, Miyuru Wanninayaka <
>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Hi Amila,
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Are you referring to CarbonContext thread local variable?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> yes it gets the tenant domain like this
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> public static String getTenantDomain() {
>>>>>>>>>>>>>>         return getCarbonContext().getTenantDomain();
>>>>>>>>>>>>>>     }
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> thanks,
>>>>>>>>>>>>>> Amila.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Thu, Jul 11, 2013 at 6:27 PM, Amila Suriarachchi <
>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Thu, Jul 11, 2013 at 4:40 PM, Dushan Abeyruwan <
>>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Hi
>>>>>>>>>>>>>>>>>  Getting following error when executing proxy service ESB
>>>>>>>>>>>>>>>>> 4.8.0 built 2013-07-11
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> [2013-07-11 16:37:22,177]  INFO - ProxyService Building
>>>>>>>>>>>>>>>>> Axis service for Proxy service : SearchTwitter
>>>>>>>>>>>>>>>>> [2013-07-11 16:37:22,177]  INFO - ProxyService Adding
>>>>>>>>>>>>>>>>> service SearchTwitter to the Axis2 configuration
>>>>>>>>>>>>>>>>> [2013-07-11 16:37:22,182]  INFO - DeploymentInterceptor
>>>>>>>>>>>>>>>>> Deploying Axis2 service: SearchTwitter {super-tenant}
>>>>>>>>>>>>>>>>> [2013-07-11 16:37:22,208]  INFO - ProxyService
>>>>>>>>>>>>>>>>> Successfully created the Axis2 service for Proxy service : 
>>>>>>>>>>>>>>>>> SearchTwitter
>>>>>>>>>>>>>>>>> [2013-07-11 16:37:29,694]  INFO - LogMediator To:
>>>>>>>>>>>>>>>>> /services/SearchTwitter, WSAction: urn:getQuote, SOAPAction: 
>>>>>>>>>>>>>>>>> urn:getQuote,
>>>>>>>>>>>>>>>>> MessageID: urn:uuid:6421430e-e95c-4aa2-a9ba-f*cd37f7753e3,
>>>>>>>>>>>>>>>>> Direction: request*
>>>>>>>>>>>>>>>>> *[2013-07-11 16:37:29,695] ERROR - NativeWorkerPool
>>>>>>>>>>>>>>>>> Uncaught exception*
>>>>>>>>>>>>>>>>> *java.lang.NullPointerException*
>>>>>>>>>>>>>>>>> * at
>>>>>>>>>>>>>>>>> java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:768)
>>>>>>>>>>>>>>>>> *
>>>>>>>>>>>>>>>>> * at
>>>>>>>>>>>>>>>>> org.wso2.carbon.caching.impl.CacheManagerFactoryImpl.getCacheManager(CacheManagerFactoryImpl.java:78)
>>>>>>>>>>>>>>>>> *
>>>>>>>>>>>>>>>>> at
>>>>>>>>>>>>>>>>> org.wso2.carbon.registry.core.utils.RegistryUtils.getCacheManager(RegistryUtils.java:289)
>>>>>>>>>>>>>>>>>  at
>>>>>>>>>>>>>>>>> org.wso2.carbon.registry.core.utils.RegistryUtils.getResourceCache(RegistryUtils.java:272)
>>>>>>>>>>>>>>>>> at
>>>>>>>>>>>>>>>>> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.getCache(CacheBackedRegistry.java:62)
>>>>>>>>>>>>>>>>>  at
>>>>>>>>>>>>>>>>> org.wso2.carbon.registry.core.caching.CacheBackedRegistry.resourceExists(CacheBackedRegistry.java:246)
>>>>>>>>>>>>>>>>> at
>>>>>>>>>>>>>>>>> org.wso2.carbon.registry.core.session.UserRegistry.resourceExists(UserRegistry.java:629)
>>>>>>>>>>>>>>>>>  at
>>>>>>>>>>>>>>>>> org.wso2.carbon.mediation.registry.WSO2Registry.getResource(WSO2Registry.java:527)
>>>>>>>>>>>>>>>>> at
>>>>>>>>>>>>>>>>> org.wso2.carbon.mediation.registry.WSO2Registry.lookup(WSO2Registry.java:131)
>>>>>>>>>>>>>>>>>  at
>>>>>>>>>>>>>>>>> org.apache.synapse.registry.AbstractRegistry.getResource(AbstractRegistry.java:63)
>>>>>>>>>>>>>>>>> at
>>>>>>>>>>>>>>>>> org.apache.synapse.config.SynapseConfiguration.getSequenceTemplate(SynapseConfiguration.java:395)
>>>>>>>>>>>>>>>>>  at
>>>>>>>>>>>>>>>>> org.apache.synapse.core.axis2.Axis2MessageContext.getSequenceTemplate(Axis2MessageContext.java:191)
>>>>>>>>>>>>>>>>> at
>>>>>>>>>>>>>>>>> org.apache.synapse.mediators.template.InvokeMediator.mediate(InvokeMediator.java:71)
>>>>>>>>>>>>>>>>>  at
>>>>>>>>>>>>>>>>> org.apache.synapse.mediators.AbstractListMediator.mediate(AbstractListMediator.java:71)
>>>>>>>>>>>>>>>>> at
>>>>>>>>>>>>>>>>> org.apache.synapse.mediators.base.SequenceMediator.mediate(SequenceMediator.java:114)
>>>>>>>>>>>>>>>>>  at
>>>>>>>>>>>>>>>>> org.apache.synapse.core.axis2.ProxyServiceMessageReceiver.receive(ProxyServiceMessageReceiver.java:162)
>>>>>>>>>>>>>>>>> at
>>>>>>>>>>>>>>>>> org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
>>>>>>>>>>>>>>>>>  at
>>>>>>>>>>>>>>>>> org.apache.synapse.transport.passthru.ServerWorker.processEntityEnclosingRequest(ServerWorker.java:404)
>>>>>>>>>>>>>>>>> at
>>>>>>>>>>>>>>>>> org.apache.synapse.transport.passthru.ServerWorker.run(ServerWorker.java:184)
>>>>>>>>>>>>>>>>>  at
>>>>>>>>>>>>>>>>> org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(Nat
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> seems like tenant domain is null for the threads
>>>>>>>>>>>>>>>> originating from passthrough transport threads. Can you please 
>>>>>>>>>>>>>>>> check the
>>>>>>>>>>>>>>>> tenant domain of the pass through transport threads?
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> thanks,
>>>>>>>>>>>>>>>> Amila.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>>> Dushan Abeyruwan
>>>>>>>>>>>>>>>>> Associate Tech Lead
>>>>>>>>>>>>>>>>> *Integration Technologies Team*
>>>>>>>>>>>>>>>>> *WSO2 Inc. http://wso2.com/*
>>>>>>>>>>>>>>>>> *Mobile:(+94)714408632*
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>>>>> Dev mailing list
>>>>>>>>>>>>>>>>> [email protected]
>>>>>>>>>>>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>> *Amila Suriarachchi*
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Software Architect
>>>>>>>>>>>>>>>> WSO2 Inc. ; http://wso2.com
>>>>>>>>>>>>>>>> lean . enterprise . middleware
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> phone : +94 71 3082805
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>>>>> Dev mailing list
>>>>>>>>>>>>>>>> [email protected]
>>>>>>>>>>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>> Miyuru Wanninayaka
>>>>>>>>>>>>>>> Technical Lead
>>>>>>>>>>>>>>> WSO2 Inc. : http://wso2.com
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Mobile : +94 77 209 9788
>>>>>>>>>>>>>>> Blog : http://miyurudw.blogspot.com
>>>>>>>>>>>>>>> Flickr : http://www.flickr.com/photos/miyuru_daminda
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> --
>>>>>>>>>>>>>> *Amila Suriarachchi*
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Software Architect
>>>>>>>>>>>>>> WSO2 Inc. ; http://wso2.com
>>>>>>>>>>>>>> lean . enterprise . middleware
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> phone : +94 71 3082805
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> Miyuru Wanninayaka
>>>>>>>>>>>>> Technical Lead
>>>>>>>>>>>>> WSO2 Inc. : http://wso2.com
>>>>>>>>>>>>>
>>>>>>>>>>>>> Mobile : +94 77 209 9788
>>>>>>>>>>>>> Blog : http://miyurudw.blogspot.com
>>>>>>>>>>>>> Flickr : http://www.flickr.com/photos/miyuru_daminda
>>>>>>>>>>>>>
>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>> Dev mailing list
>>>>>>>>>>>>> [email protected]
>>>>>>>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> *Afkham Azeez*
>>>>>>>>>>>> Director of Architecture; WSO2, Inc.; http://wso2.com
>>>>>>>>>>>> Member; Apache Software Foundation; http://www.apache.org/
>>>>>>>>>>>> * <http://www.apache.org/>**
>>>>>>>>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919
>>>>>>>>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>*
>>>>>>>>>>>> twitter: 
>>>>>>>>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
>>>>>>>>>>>> *
>>>>>>>>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez*
>>>>>>>>>>>> *
>>>>>>>>>>>> *
>>>>>>>>>>>> *Lean . Enterprise . Middleware*
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Miyuru Wanninayaka
>>>>>>>>>>> Technical Lead
>>>>>>>>>>> WSO2 Inc. : http://wso2.com
>>>>>>>>>>>
>>>>>>>>>>> Mobile : +94 77 209 9788
>>>>>>>>>>> Blog : http://miyurudw.blogspot.com
>>>>>>>>>>> Flickr : http://www.flickr.com/photos/miyuru_daminda
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> *Afkham Azeez*
>>>>>>>>>> Director of Architecture; WSO2, Inc.; http://wso2.com
>>>>>>>>>> Member; Apache Software Foundation; http://www.apache.org/
>>>>>>>>>> * <http://www.apache.org/>**
>>>>>>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919
>>>>>>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>*
>>>>>>>>>> twitter: 
>>>>>>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
>>>>>>>>>> *
>>>>>>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez*
>>>>>>>>>> *
>>>>>>>>>> *
>>>>>>>>>> *Lean . Enterprise . Middleware*
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> Miyuru Wanninayaka
>>>>>>>>> Technical Lead
>>>>>>>>> WSO2 Inc. : http://wso2.com
>>>>>>>>>
>>>>>>>>> Mobile : +94 77 209 9788
>>>>>>>>> Blog : http://miyurudw.blogspot.com
>>>>>>>>> Flickr : http://www.flickr.com/photos/miyuru_daminda
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> *Afkham Azeez*
>>>>>>>> Director of Architecture; WSO2, Inc.; http://wso2.com
>>>>>>>> Member; Apache Software Foundation; http://www.apache.org/
>>>>>>>> * <http://www.apache.org/>**
>>>>>>>> email: **[email protected]* <[email protected]>* cell: +94 77 3320919
>>>>>>>> blog: **http://blog.afkham.org* <http://blog.afkham.org>*
>>>>>>>> twitter: 
>>>>>>>> **http://twitter.com/afkham_azeez*<http://twitter.com/afkham_azeez>
>>>>>>>> *
>>>>>>>> linked-in: **http://lk.linkedin.com/in/afkhamazeez*
>>>>>>>> *
>>>>>>>> *
>>>>>>>> *Lean . Enterprise . Middleware*
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Dev mailing list
>>>>>>>> [email protected]
>>>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Dushan Abeyruwan
>>>>>>> Associate Tech Lead
>>>>>>> *Integration Technologies Team*
>>>>>>> *WSO2 Inc. http://wso2.com/*
>>>>>>> *Mobile:(+94)714408632*
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Miyuru Wanninayaka
>>>>>> Technical Lead
>>>>>> WSO2 Inc. : http://wso2.com
>>>>>>
>>>>>> Mobile : +94 77 209 9788
>>>>>> Blog : http://miyurudw.blogspot.com
>>>>>> Flickr : http://www.flickr.com/photos/miyuru_daminda
>>>>>>
>>>>>> _______________________________________________
>>>>>> Dev mailing list
>>>>>> [email protected]
>>>>>> http://wso2.org/cgi-bin/mailman/listinfo/dev
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> *Amila Suriarachchi*
>>>>>
>>>>> Software Architect
>>>>> WSO2 Inc. ; http://wso2.com
>>>>> lean . enterprise . middleware
>>>>>
>>>>> phone : +94 71 3082805
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Miyuru Wanninayaka
>>>> Technical Lead
>>>> WSO2 Inc. : http://wso2.com
>>>>
>>>> Mobile : +94 77 209 9788
>>>> Blog : http://miyurudw.blogspot.com
>>>> Flickr : http://www.flickr.com/photos/miyuru_daminda
>>>>
>>>
>>>
>>>
>>> --
>>> *Amila Suriarachchi*
>>>
>>> Software Architect
>>> WSO2 Inc. ; http://wso2.com
>>> lean . enterprise . middleware
>>>
>>> phone : +94 71 3082805
>>>
>>
>>
>>
>> --
>> Miyuru Wanninayaka
>> Technical Lead
>> WSO2 Inc. : http://wso2.com
>>
>> Mobile : +94 77 209 9788
>> Blog : http://miyurudw.blogspot.com
>> Flickr : http://www.flickr.com/photos/miyuru_daminda
>>
>
>
>
> --
> Miyuru Wanninayaka
> Technical Lead
> WSO2 Inc. : http://wso2.com
>
> Mobile : +94 77 209 9788
> Blog : http://miyurudw.blogspot.com
> Flickr : http://www.flickr.com/photos/miyuru_daminda
>



-- 
Sameera Jayasoma,
Architect,

WSO2, Inc. (http://wso2.com)
email: [email protected]
blog: http://sameera.adahas.org
twitter: https://twitter.com/sameerajayasoma
flickr: http://www.flickr.com/photos/sameera-jayasoma/collections

Lean . Enterprise . Middleware
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to