Thanks, Jeffrey!

Regards,
Mariangela




*--*
Mariangela Hills
Senior Technical Writer

*WSO2, Inc.*lean.enterprise.middleware.
m: +94 773 500185
w: http://wso2.com
<http://wso2.com/events/>


On Sat, Apr 5, 2014 at 3:40 AM, Jeffrey Nguyen (jeffrngu) <
[email protected]> wrote:

>  Hi Nirmal, Mari,
>
>  I added some description and example for "networkInterfaces" under
> https://cwiki.apache.org/confluence/display/STRATOS/4.0.0+Sample+Cartridge+Definition.
>   Please take a look and feel free to make corrections.
>
>  Thanks,
> -Jeffrey
>
>   From: Nirmal Fernando <[email protected]>
> Reply-To: "[email protected]" <
> [email protected]>
> Date: Friday, April 4, 2014 9:08 AM
> To: "[email protected]" <[email protected]>
> Cc: Mariangela Hills <[email protected]>, Udara Liyanage <[email protected]
> >
>
> Subject: Re: Cannot subscribe to a cartridge
>
>   Hi Jeffrey,
>
>  Mari has given you the necessary permissions, and I think it's best if
> you can do the edits. Please go ahead and edit the wiki page.
>
>
> On Fri, Apr 4, 2014 at 9:31 PM, Jeffrey Nguyen (jeffrngu) <
> [email protected]> wrote:
>
>>  Hi Praneesha,
>>
>>  "{ "name": "networkInterfaces", "value": "my-network1,my-network2" }"
>> is obsolete as per my previous email (copied and pasted below).   Also,
>> Nirmal asked to document the new format but if you want to do that, you're
>> more than welcome to :-)   The info is available on
>> https://issues.apache.org/jira/browse/STRATOS-507.   Let me know if you
>> still want to document that.
>>
>>  Thanks,
>> -Jeffrey
>>
>>  On Fri, Apr 4, 2014 at 10:58 AM, Jeffrey Nguyen (jeffrngu) <
>> [email protected]> wrote:
>>
>>>  Hi Akila,
>>>
>>>  Please see my comments on
>>> https://issues.apache.org/jira/browse/STRATOS-180.   The
>>> "networkInterfaces" properties was moved out of the property config section.
>>>
>>>  -Jeffrey
>>>
>>
>>   From: Praneesha Chandrasiri <[email protected]>
>> Reply-To: "[email protected]" <
>> [email protected]>
>> Date: Friday, April 4, 2014 12:07 AM
>> To: Mariangela Hills <[email protected]>
>> Cc: "[email protected]" <[email protected]>,
>> Udara Liyanage <[email protected]>
>> Subject: Re: Cannot subscribe to a cartridge
>>
>>   Hi Mari,
>>
>>  Sure. Will do.
>>
>>
>> On Fri, Apr 4, 2014 at 1:28 PM, Mariangela Hills <[email protected]>wrote:
>>
>>> Praneesha, can you please add this, as I am still working on the
>>> in-depth descriptions.
>>>
>>>  Regards,
>>> Mariangela
>>>
>>>
>>>
>>>
>>> *-- *
>>>  Mariangela Hills
>>>  Senior Technical Writer
>>>
>>> *WSO2, Inc. *lean.enterprise.middleware.
>>> m: +94 773 500185
>>> w: http://wso2.com
>>>  <http://wso2.com/events/>
>>>
>>>
>>>   On Fri, Apr 4, 2014 at 12:35 PM, Udara Liyanage <[email protected]>wrote:
>>>
>>>> Hi Mari,
>>>>
>>>>  Network interfaces definition is not there in the documentation.
>>>> Could you please add it.
>>>> This is a sample in the prvoded Jira
>>>> { "name": "networkInterfaces", "value": "my-network1,my-network2" }
>>>>
>>>>
>>>> On Fri, Apr 4, 2014 at 6:03 AM, Nirmal Fernando <[email protected]
>>>> > wrote:
>>>>
>>>>> Seems, we have missed the undeploy operation from UI.
>>>>>
>>>>>
>>>>> On Fri, Apr 4, 2014 at 11:28 AM, Nirmal Fernando <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> And if you want to delete a Cartridge, you can undeploy the Cartridge
>>>>>> definition using the type.
>>>>>>
>>>>>>
>>>>>> On Fri, Apr 4, 2014 at 11:19 AM, Nirmal Fernando <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Akila, if you redeploy the same Cartridge, it would get undeployed
>>>>>>> and deployed.
>>>>>>>
>>>>>>>
>>>>>>> On Fri, Apr 4, 2014 at 11:14 AM, Akila Ravihansa Perera <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>>  Thanks all!
>>>>>>>>
>>>>>>>>  I've a silly question though...how do I delete already created
>>>>>>>> cartridge? Or modify the cartridge definition? Couldn't find the 
>>>>>>>> location
>>>>>>>> where all that is stored.
>>>>>>>>
>>>>>>>>  Thanks.
>>>>>>>>
>>>>>>>>
>>>>>>>> On Fri, Apr 4, 2014 at 11:05 AM, Nirmal Fernando <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>> Thanks Jeffrey! Can you please document this network interfaces
>>>>>>>>> change in the wiki? You can get some help from Mari.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Fri, Apr 4, 2014 at 10:58 AM, Jeffrey Nguyen (jeffrngu) <
>>>>>>>>> [email protected]> wrote:
>>>>>>>>>
>>>>>>>>>>  Hi Akila,
>>>>>>>>>>
>>>>>>>>>>  Please see my comments on
>>>>>>>>>> https://issues.apache.org/jira/browse/STRATOS-180.   The
>>>>>>>>>> "networkInterfaces" properties was moved out of the property config 
>>>>>>>>>> section.
>>>>>>>>>>
>>>>>>>>>>  -Jeffrey
>>>>>>>>>>
>>>>>>>>>>   From: Akila Ravihansa Perera <[email protected]>
>>>>>>>>>> Reply-To: "[email protected]" <
>>>>>>>>>> [email protected]>
>>>>>>>>>> Date: Thursday, April 3, 2014 9:14 PM
>>>>>>>>>> To: "[email protected]" <
>>>>>>>>>> [email protected]>
>>>>>>>>>> Subject: Cannot subscribe to a cartridge
>>>>>>>>>>
>>>>>>>>>>   Hi,
>>>>>>>>>>
>>>>>>>>>>  I get this error when I try to spawn a cartridge instance.
>>>>>>>>>> Please help.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>  TID: [0] [SCC] [2014-04-04 10:30:09,398] ERROR
>>>>>>>>>> {jclouds.compute} -  createNodesInGroup(myphpphp), completed: 0/1, 
>>>>>>>>>> errors:
>>>>>>>>>> 1, rate: 112ms/op {jclouds.compute}
>>>>>>>>>> java.util.concurrent.ExecutionException:
>>>>>>>>>> org.jclouds.http.HttpResponseException: command: POST
>>>>>>>>>> http://192.168.100.51:8774/v2/31e8d254bc1d44fca6c36b261e8d82f1/serversHTTP/1.1
>>>>>>>>>>  failed with response: HTTP/1.1 400 null; content: [{"badRequest":
>>>>>>>>>> {"message": "Multiple possible networks found, use a Network ID to 
>>>>>>>>>> be more
>>>>>>>>>> specific.", "code": 400}}]
>>>>>>>>>> at
>>>>>>>>>> com.google.common.util.concurrent.AbstractFuture$Sync.getValue(AbstractFuture.java:299)
>>>>>>>>>> at
>>>>>>>>>> com.google.common.util.concurrent.AbstractFuture$Sync.get(AbstractFuture.java:286)
>>>>>>>>>> at
>>>>>>>>>> com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:116)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.concurrent.FutureIterables$1.run(FutureIterables.java:125)
>>>>>>>>>> at
>>>>>>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>>>>>>>>>> at
>>>>>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>>>>>>>>>> at java.lang.Thread.run(Thread.java:744)
>>>>>>>>>> Caused by: org.jclouds.http.HttpResponseException: command: POST
>>>>>>>>>> http://192.168.100.51:8774/v2/31e8d254bc1d44fca6c36b261e8d82f1/serversHTTP/1.1
>>>>>>>>>>  failed with response: HTTP/1.1 400 null; content: [{"badRequest":
>>>>>>>>>> {"message": "Multiple possible networks found, use a Network ID to 
>>>>>>>>>> be more
>>>>>>>>>> specific.", "code": 400}}]
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.openstack.nova.v2_0.handlers.NovaErrorHandler.handleError(NovaErrorHandler.java:81)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.http.handlers.DelegatingErrorHandler.handleError(DelegatingErrorHandler.java:67)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.http.internal.BaseHttpCommandExecutorService.shouldContinue(BaseHttpCommandExecutorService.java:180)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.http.internal.BaseHttpCommandExecutorService.invoke(BaseHttpCommandExecutorService.java:150)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.rest.internal.InvokeSyncToAsyncHttpMethod.invoke(InvokeSyncToAsyncHttpMethod.java:129)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.rest.internal.InvokeSyncToAsyncHttpMethod.apply(InvokeSyncToAsyncHttpMethod.java:95)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.rest.internal.InvokeSyncToAsyncHttpMethod.apply(InvokeSyncToAsyncHttpMethod.java:56)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.reflect.FunctionalReflection$FunctionalInvocationHandler.handleInvocation(FunctionalReflection.java:117)
>>>>>>>>>> at
>>>>>>>>>> com.google.common.reflect.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:79)
>>>>>>>>>> at com.sun.proxy.$Proxy113.create(Unknown Source)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.openstack.nova.v2_0.compute.NovaComputeServiceAdapter.createNodeWithGroupEncodedIntoName(NovaComputeServiceAdapter.java:137)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.compute.strategy.impl.AdaptingComputeServiceStrategies.createNodeWithGroupEncodedIntoName(AdaptingComputeServiceStrategies.java:194)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet$AddNode.call(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:81)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet$AddNode.call(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:65)
>>>>>>>>>> at java.util.concurrent.FutureTask.run(FutureTask.java:262)
>>>>>>>>>> at
>>>>>>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>>>>>>>>>> at
>>>>>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>>>>>>>>>> at java.lang.Thread.run(Thread.java:744)
>>>>>>>>>> at java.lang.Thread.getStackTrace(Thread.java:1588)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet.createNodeInGroupWithNameAndTemplate(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:169)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.openstack.nova.v2_0.compute.strategy.ApplyNovaTemplateOptionsCreateNodesWithGroupEncodedIntoNameThenAddToSet.createNodeInGroupWithNameAndTemplate(ApplyNovaTemplateOptionsCreateNodesWithGroupEncodedIntoNameThenAddToSet.java:155)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.compute.strategy.impl.CreateNodesWithGroupEncodedIntoNameThenAddToSet.execute(CreateNodesWithGroupEncodedIntoNameThenAddToSet.java:124)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.openstack.nova.v2_0.compute.strategy.ApplyNovaTemplateOptionsCreateNodesWithGroupEncodedIntoNameThenAddToSet.execute(ApplyNovaTemplateOptionsCreateNodesWithGroupEncodedIntoNameThenAddToSet.java:148)
>>>>>>>>>> at
>>>>>>>>>> org.jclouds.compute.internal.BaseComputeService.createNodesInGroup(BaseComputeService.java:215)
>>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>>>>>>> at
>>>>>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>>>>>>>>> at
>>>>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:606)
>>>>>>>>>> at
>>>>>>>>>> com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:37)
>>>>>>>>>> at com.sun.proxy.$Proxy91.createNodesInGroup(Unknown Source)
>>>>>>>>>> at
>>>>>>>>>> org.apache.stratos.cloud.controller.impl.CloudControllerServiceImpl.startInstance(CloudControllerServiceImpl.java:356)
>>>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>>>>>>> at
>>>>>>>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
>>>>>>>>>> at
>>>>>>>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:606)
>>>>>>>>>> at
>>>>>>>>>> org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:212)
>>>>>>>>>> at
>>>>>>>>>> org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:117)
>>>>>>>>>> at
>>>>>>>>>> org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40)
>>>>>>>>>> at
>>>>>>>>>> org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:110)
>>>>>>>>>> at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:180)
>>>>>>>>>> at
>>>>>>>>>> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172)
>>>>>>>>>> at
>>>>>>>>>> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:146)
>>>>>>>>>> at
>>>>>>>>>> org.wso2.carbon.core.transports.CarbonServlet.doPost(CarbonServlet.java:231)
>>>>>>>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)
>>>>>>>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
>>>>>>>>>> at
>>>>>>>>>> org.eclipse.equinox.http.servlet.internal.ServletRegistration.service(ServletRegistration.java:61)
>>>>>>>>>> at
>>>>>>>>>> org.eclipse.equinox.http.servlet.internal.ProxyServlet.processAlias(ProxyServlet.java:128)
>>>>>>>>>> at
>>>>>>>>>> org.eclipse.equinox.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:68)
>>>>>>>>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
>>>>>>>>>> at
>>>>>>>>>> org.wso2.carbon.tomcat.ext.servlet.DelegationServlet.service(DelegationServlet.java:68)
>>>>>>>>>> at
>>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
>>>>>>>>>> at
>>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>>>>>>>>> at
>>>>>>>>>> org.wso2.carbon.tomcat.ext.filter.CharacterSetFilter.doFilter(CharacterSetFilter.java:61)
>>>>>>>>>> at
>>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
>>>>>>>>>> at
>>>>>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>>>>>>>>>> at
>>>>>>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
>>>>>>>>>> at
>>>>>>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
>>>>>>>>>> at
>>>>>>>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
>>>>>>>>>> at
>>>>>>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
>>>>>>>>>> at
>>>>>>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
>>>>>>>>>> at
>>>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.continueInvocation(CompositeValve.java:178)
>>>>>>>>>> at
>>>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CarbonTomcatValve$1.invoke(CarbonTomcatValve.java:47)
>>>>>>>>>> at
>>>>>>>>>> org.wso2.carbon.webapp.mgt.TenantLazyLoaderValve.invoke(TenantLazyLoaderValve.java:56)
>>>>>>>>>> at
>>>>>>>>>> org.wso2.carbon.tomcat.ext.valves.TomcatValveContainer.invokeValves(TomcatValveContainer.java:47)
>>>>>>>>>> at
>>>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CompositeValve.invoke(CompositeValve.java:141)
>>>>>>>>>> at
>>>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CarbonStuckThreadDetectionValve.invoke(CarbonStuckThreadDetectionValve.java:156)
>>>>>>>>>> at
>>>>>>>>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
>>>>>>>>>> at
>>>>>>>>>> org.wso2.carbon.tomcat.ext.valves.CarbonContextCreatorValve.invoke(CarbonContextCreatorValve.java:52)
>>>>>>>>>> at
>>>>>>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>>>>>>>>>> at
>>>>>>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
>>>>>>>>>> at
>>>>>>>>>> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
>>>>>>>>>> at
>>>>>>>>>> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
>>>>>>>>>> at
>>>>>>>>>> org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1653)
>>>>>>>>>> ... 3 more
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>  Apparently it tried to communicate to
>>>>>>>>>> http://192.168.100.51:8774/v2  but my openstack endpoint URL is
>>>>>>>>>> http://192.168.100.51:5000/v2.0  I've configured this
>>>>>>>>>> cloud-controller.xml but it doesn't seem to work.
>>>>>>>>>>
>>>>>>>>>>  Thanks.
>>>>>>>>>>
>>>>>>>>>>  --
>>>>>>>>>> Akila Ravihansa Perera
>>>>>>>>>> Software Engineer
>>>>>>>>>> WSO2 Inc.
>>>>>>>>>> http://wso2.com
>>>>>>>>>>
>>>>>>>>>> Phone: +94 77 64 154 38
>>>>>>>>>> Blog: http://ravihansa3000.blogspot.com
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>  --
>>>>>>>>> Best Regards,
>>>>>>>>> Nirmal
>>>>>>>>>
>>>>>>>>> Nirmal Fernando.
>>>>>>>>> PPMC Member & Committer of Apache Stratos,
>>>>>>>>> Senior Software Engineer, WSO2 Inc.
>>>>>>>>>
>>>>>>>>>  Blog: http://nirmalfdo.blogspot.com/
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>  --
>>>>>>>> Akila Ravihansa Perera
>>>>>>>> Software Engineer
>>>>>>>> WSO2 Inc.
>>>>>>>> http://wso2.com
>>>>>>>>
>>>>>>>> Phone: +94 77 64 154 38
>>>>>>>> Blog: http://ravihansa3000.blogspot.com
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Best Regards,
>>>>>>> Nirmal
>>>>>>>
>>>>>>> Nirmal Fernando.
>>>>>>> PPMC Member & Committer of Apache Stratos,
>>>>>>> Senior Software Engineer, WSO2 Inc.
>>>>>>>
>>>>>>>  Blog: http://nirmalfdo.blogspot.com/
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Best Regards,
>>>>>> Nirmal
>>>>>>
>>>>>> Nirmal Fernando.
>>>>>> PPMC Member & Committer of Apache Stratos,
>>>>>> Senior Software Engineer, WSO2 Inc.
>>>>>>
>>>>>>  Blog: http://nirmalfdo.blogspot.com/
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Best Regards,
>>>>> Nirmal
>>>>>
>>>>> Nirmal Fernando.
>>>>> PPMC Member & Committer of Apache Stratos,
>>>>> Senior Software Engineer, WSO2 Inc.
>>>>>
>>>>>  Blog: http://nirmalfdo.blogspot.com/
>>>>>
>>>>
>>>>
>>>>
>>>>   --
>>>>
>>>> Udara Liyanage
>>>> Software Engineer
>>>> WSO2, Inc.: http://wso2.com
>>>> lean. enterprise. middleware
>>>>
>>>>  web: http://udaraliyanage.wordpress.com
>>>>  phone: +94 71 443 6897
>>>>
>>>
>>>
>>
>>
>>  --
>>  Thanks & Best Regards,
>> *Praneesha Chandrasiri*
>>  *Technical Writer*
>> *WSO2 Inc. *
>> *Mobile: +(94) 718156888 <%2B%2894%29%20718156888>*
>> *E-mail: [email protected] <[email protected]>*
>>
>>
>
>
> --
> Best Regards,
> Nirmal
>
> Nirmal Fernando.
> PPMC Member & Committer of Apache Stratos,
> Senior Software Engineer, WSO2 Inc.
>
>  Blog: http://nirmalfdo.blogspot.com/
>

Reply via email to