Hi, This is the update on my work as I have already presented to my mentors at the mid-evaluation meeting (02-07-2015) at WSO2.
I have created a sample [1] to show the functionality JMSXDeliveryCount feature. Basically what I have done in this feature implementation is extracting a a parameter from the JMS message header and setting it to the axis2 message context so that can be accessed later if needed. Since its not much complex I thought there is no need of an integration test for that feature. I have sent a PR for my implementations in the carbon-mediation repo.[2]. I am also working on integration tests and I have completed integration test implementation for SharedTopicSusbcriber feature. You can find my work in here[3] [1]. https://docs.google.com/document/d/1kODw_Fru4sVpOAyBfhv3FHyTir0hzb5EKSbXa5LMcSs/edit?usp=sharing [2]. https://github.com/wso2/carbon-mediation/pull/255 [3]. https://github.com/ecr666/product-esb/tree/gsocDevelop Thank you! On Wed, Jun 17, 2015 at 9:36 AM, eranda rajapaksha <erand...@gmail.com> wrote: > Hi, > > This is the current progress update on my project. > > After completing the implementation of Shared Topic Subscription feature I > have created a sample for it [1]. I also performed a load test on the > feature and the results can be found in here [2]. Created a doc[3] with > the newly added parameters and their description as requested by Malaka. > > I completed the Message Delivery Count feature implementation and > currently preparing a sample for it. You can find my inbound endpoint > implementations in this repository (gsocDevelop branch) [4] > > I have faced a difficulty when trying to implement the integration tests > because the current testing framework only supports ActiveMQ as a JMS > broker but for my implementation it requires HornetQ support. I discussed > this with my mentor and I am planing to extend the required classes from > testing framework into inbound testing package in order to support HornetQ. > > [1]. > https://docs.google.com/document/d/17Q6B60KYrU53YfxPyML_YKZftCrNWH_YTtG8r7bBwcA/edit?usp=sharing > [2]. > https://drive.google.com/file/d/0BzqPLt3PumqXMUE2bExoTnJ0QUk/view?usp=sharing > [3]. > https://docs.google.com/document/d/1AqiLBLenl68WTKwoC0HLliYPfIBSWCFMy8BH7Vh8ZNw/edit?usp=sharing > [4]. https://github.com/ecr666/carbon-mediation/tree/gsocDevelop > > Thank you! > > On Fri, Jun 12, 2015 at 8:43 AM, eranda rajapaksha <erand...@gmail.com> > wrote: > >> Hi, >> >> These points were discussed during the last meeting I had with the >> mentor, Buddhima Wijeweera on 11-06-2015 >> >> -Test framework currently supports only ActiveMQ brokers as JMS Servers. >> But for the integration testing implementations for JMS 2.0 features I need >> HornetQ broker support. To overcome this we have agreed to implement the >> integration tests by assuming external HornetQ server is running. >> - Discussed to a plan for integration tests using log identification >> - Discussed on asynchronous message sending feature implementation >> - Discussed on inbound endpoint UI update and it needs to be done >> immediate after the mid evaluation >> >> Thank you! >> >> >> On Wed, Jun 3, 2015 at 9:50 AM, eranda rajapaksha <erand...@gmail.com> >> wrote: >> >>> Hi Buddhima, >>> >>> Yes, my plan is to work on sender side features after completion of the >>> tests. I need to have a discussion regarding that too and it will be easy >>> to do it in person. >>> So I will let you know a time I can visit to the office for that. >>> >>> Thank you! >>> >>> On Mon, Jun 1, 2015 at 9:45 AM, Buddhima Wijeweera <buddh...@wso2.com> >>> wrote: >>> >>>> Hi Eranda, >>>> >>>> Thank you for updating the progress of the project. It's good to add >>>> tests on aspects that Makala has mentioned. >>>> >>>> After completion of tests, you can start on working JMS sender side new >>>> features related to JMS 2.0 . So it's better to have a plan on that too. >>>> >>>> Thank you! >>>> >>>> On Sun, May 31, 2015 at 9:25 PM, eranda rajapaksha <erand...@gmail.com> >>>> wrote: >>>> >>>>> Hi, >>>>> >>>>> Sure ayya, I will work on those too. >>>>> >>>>> Thank you! >>>>> >>>>> On Sun, May 31, 2015 at 11:06 AM, Malaka Silva <mal...@wso2.com> >>>>> wrote: >>>>> >>>>>> Hi Eranda, >>>>>> >>>>>> Good progress indeed. >>>>>> >>>>>> Great if you can also add the following as well. >>>>>> >>>>>> >>>>>> 1. Load test and long running test to identify the stability of >>>>>> the feature. >>>>>> 2. Update the docs with the new params. >>>>>> >>>>>> >>>>>> On Sat, May 30, 2015 at 8:27 AM, eranda rajapaksha < >>>>>> erand...@gmail.com> wrote: >>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> This is the current progress on my project. >>>>>>> First of all I had to configure WSO2 ESB with some JMS 2.0 supported >>>>>>> message broker, I discussed it with my mentor and selected HornetQ MB >>>>>>> for >>>>>>> the testing purpose. >>>>>>> In order to configure ESB with JMS 2.0, adding JMS-2.0-API jar into >>>>>>> <ESB_HOME>/repository/components/lib/ directory didn't work because >>>>>>> there >>>>>>> is a JMS-1.1-API jar included inside ESB (in <ESB_HOME>/lib/endorsed/ >>>>>>> directory) Therefor it had to be replaced as well. >>>>>>> When adding HornetQ specific jars into ESB, I created a single jar >>>>>>> named hornetq-all >>>>>>> <https://drive.google.com/file/d/0BzqPLt3PumqXNi1vM1hodFc1NWs/view?usp=sharing> >>>>>>> [1] >>>>>>> <https://drive.google.com/file/d/0BzqPLt3PumqXNi1vM1hodFc1NWs/view?usp=sharing> >>>>>>> by >>>>>>> combining all required packages, (similar to which is done in WSO2 ESB >>>>>>> HornetQ configuration for JMS 1.1). >>>>>>> After completing the configuration,I tried ESB JMS samples with JMS >>>>>>> 2.0 api library in order to verify the backward compatibility of JMS >>>>>>> 2.0. >>>>>>> >>>>>>> I have implemented the Shared Topic Subscribing feature and >>>>>>> successfully configured it with the HornetQ message broker. And I >>>>>>> worked on >>>>>>> the Message Delivery Count feature as well. >>>>>>> You can find my inbound endpoint implementations in this repository >>>>>>> (gsocDevelop branch) [2] >>>>>>> <https://github.com/ecr666/carbon-mediation/tree/gsocDevelop>. >>>>>>> >>>>>>> I have planned to do the following tasks and complete the inbound >>>>>>> endpoint implementations at the time of the mid evaluation (26/06/2015) >>>>>>> >>>>>>> - JMS Shared Topic Subscriber feature sample >>>>>>> - JMS message delivery count feature sample >>>>>>> - Inbound endpoint UI update for the additional user input >>>>>>> parameters >>>>>>> - Integration tests for the implemented features >>>>>>> >>>>>>> >>>>>>> [1]. >>>>>>> https://drive.google.com/file/d/0BzqPLt3PumqXNi1vM1hodFc1NWs/view?usp=sharing >>>>>>> [2]. https://github.com/ecr666/carbon-mediation/tree/gsocDevelop >>>>>>> >>>>>>> Thank you! >>>>>>> >>>>>>> On Mon, May 11, 2015 at 7:49 AM, eranda rajapaksha < >>>>>>> erand...@gmail.com> wrote: >>>>>>> >>>>>>>> Hi, >>>>>>>> >>>>>>>> Yes, I most of the implementation will be on JMSConnectionFactory >>>>>>>> class. And since it implements ConnectionFactory class there are some >>>>>>>> new >>>>>>>> methods that needs to be implemented too. >>>>>>>> Yes, I need to add few parameters too. For the Shared Subscription >>>>>>>> I have planned to added two additional parameters to enable shared >>>>>>>> subscription and to get a subscription name. >>>>>>>> >>>>>>>> Thank you! >>>>>>>> >>>>>>>> On Mon, May 11, 2015 at 6:34 AM, Malaka Silva <mal...@wso2.com> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> Hi Eranda, >>>>>>>>> >>>>>>>>> I guess your changes only needs to be applied to >>>>>>>>> JMSConnectionFactory class and other process will follow the same >>>>>>>>> flow? >>>>>>>>> >>>>>>>>> Also are there any additional parameters required to support 2.0? >>>>>>>>> >>>>>>>>> On Mon, May 11, 2015 at 6:27 AM, eranda rajapaksha < >>>>>>>>> erand...@gmail.com> wrote: >>>>>>>>> >>>>>>>>>> hi, >>>>>>>>>> >>>>>>>>>> Thank you for the response. >>>>>>>>>> Yes, the Shared Topic Subscription will support both durable and >>>>>>>>>> non-durable modes. >>>>>>>>>> JMS inbound endpoint already have a configuration parameter to >>>>>>>>>> set the JMS version, and current JMS inbound is implemented to >>>>>>>>>> support both >>>>>>>>>> JMS 1.0 and JMS 1.1. In there version specific code segments are >>>>>>>>>> implemented inside conditional statements by considering the users >>>>>>>>>> input to >>>>>>>>>> jms.version parameter. So I am planning to follow the same approach >>>>>>>>>> for JMS >>>>>>>>>> 2.0 as well. >>>>>>>>>> For shared topic subscription, modifications should be done when >>>>>>>>>> creating MessageConsumers for topics. Also there are some abstract >>>>>>>>>> methods >>>>>>>>>> that needs to be implemented in inherited classes with the use of >>>>>>>>>> JMS 2.0 >>>>>>>>>> api library. >>>>>>>>>> >>>>>>>>>> Thank you! >>>>>>>>>> >>>>>>>>>> On Sun, May 10, 2015 at 11:05 AM, Buddhima Wijeweera < >>>>>>>>>> buddh...@wso2.com> wrote: >>>>>>>>>> >>>>>>>>>>> Hi Eranda, >>>>>>>>>>> >>>>>>>>>>> Thank you for providing brief introduction on the project. >>>>>>>>>>> It would be better, if you can explain on changes which will >>>>>>>>>>> take place in existing JMS inbound-endpoint. And how you are going >>>>>>>>>>> to make >>>>>>>>>>> it ready for "Shared Topic Subscription". >>>>>>>>>>> Also need to know is "Shared Topic Subscription" going to >>>>>>>>>>> support both durable & non-durable ? >>>>>>>>>>> >>>>>>>>>>> Thank you! >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> On Fri, May 8, 2015 at 5:19 PM, eranda rajapaksha < >>>>>>>>>>> erand...@gmail.com> wrote: >>>>>>>>>>> >>>>>>>>>>>> Hi, >>>>>>>>>>>> >>>>>>>>>>>> I am Eranda Rajapakshe, GSoC 2015 participant for the project >>>>>>>>>>>> JMS 2.0 support for WSO2 ESB JMS transport and inbound endpoint. >>>>>>>>>>>> First of >>>>>>>>>>>> all thank you for giving me this valuable opportunity. >>>>>>>>>>>> >>>>>>>>>>>> After selecting my GSoC project I had a initial discussion with >>>>>>>>>>>> the ESB team. In there I was asked to do the JMS 2.0 listener >>>>>>>>>>>> implementations on JMS inbound endpoint and sender implementations >>>>>>>>>>>> on JMS >>>>>>>>>>>> transport sender, because the transport listeners are soon to be >>>>>>>>>>>> deprecated >>>>>>>>>>>> from ESB. >>>>>>>>>>>> >>>>>>>>>>>> Following is the summary of my project plan, more detailed GSoC >>>>>>>>>>>> proposal can be found in here. [1] ( Access is restricted for the >>>>>>>>>>>> authorized personals ) >>>>>>>>>>>> >>>>>>>>>>>> Mainly the JMS 2.0 comes with a new API ( simplified API ) and >>>>>>>>>>>> some additional functionalities. But it continue to support >>>>>>>>>>>> earlier APIs >>>>>>>>>>>> too. >>>>>>>>>>>> >>>>>>>>>>>> 1. Shared Topic Subscription >>>>>>>>>>>> >>>>>>>>>>>> Earlier the topic subscription was restricted to one >>>>>>>>>>>> subscriber, but to improve the scalability they have made it to be >>>>>>>>>>>> shared >>>>>>>>>>>> in the new version. >>>>>>>>>>>> >>>>>>>>>>>> 2. JMSXDeliveryCount >>>>>>>>>>>> >>>>>>>>>>>> This value is to indicate the number of times the message got >>>>>>>>>>>> redelivered. Even though this is not a new header value for JMS, >>>>>>>>>>>> setting >>>>>>>>>>>> this was not mandatory in earlier versions. I am planning to use >>>>>>>>>>>> JMSXDeliveryCount value to satisfy new use cases. >>>>>>>>>>>> >>>>>>>>>>>> 3. Delivery Delay >>>>>>>>>>>> >>>>>>>>>>>> Using this message publishing client can specify the delay >>>>>>>>>>>> interval and the JMS provider will not forward the messages to the >>>>>>>>>>>> consumers until the given delay time is reached. I am planning to >>>>>>>>>>>> implement >>>>>>>>>>>> this on WSO2 ESB Transport Sender. >>>>>>>>>>>> >>>>>>>>>>>> Other than the implementation I have planned to, >>>>>>>>>>>> >>>>>>>>>>>> i. create integration tests >>>>>>>>>>>> >>>>>>>>>>>> ii. do performance tests >>>>>>>>>>>> >>>>>>>>>>>> iii. create simple samples >>>>>>>>>>>> >>>>>>>>>>>> iv. make documentation >>>>>>>>>>>> >>>>>>>>>>>> on above new feature implementations. >>>>>>>>>>>> >>>>>>>>>>>> [1]. >>>>>>>>>>>> https://www.google-melange.com/gsoc/proposal/review/student/google/gsoc2015/erandacr/5766466041282560 >>>>>>>>>>>> >>>>>>>>>>>> Thank you! >>>>>>>>>>>> >>>>>>>>>>>> -- >>>>>>>>>>>> *Eranda Rajapakshe* >>>>>>>>>>>> Computer Science and Engineering Undergraduate, >>>>>>>>>>>> University of Moratuwa. >>>>>>>>>>>> Tel : +94784822608 >>>>>>>>>>>> Email : erand...@gmail.com <eran...@wso2.com> >>>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> >>>>>>>>>>> -- >>>>>>>>>>> Buddhima Wijeweera >>>>>>>>>>> Software Engineer; WSO2 Inc.; http://wso2.com , >>>>>>>>>>> >>>>>>>>>>> Mobile: +94 71 427 9966 >>>>>>>>>>> Email: buddh...@wso2.com >>>>>>>>>>> Blog: https://buddhimawijeweera.wordpress.com >>>>>>>>>>> GitHub Profile: https://github.com/Buddhima >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> -- >>>>>>>>>> *Eranda Rajapakshe* >>>>>>>>>> Computer Science and Engineering Undergraduate, >>>>>>>>>> University of Moratuwa. >>>>>>>>>> Tel : +94784822608 >>>>>>>>>> Email : erand...@gmail.com <eran...@wso2.com> >>>>>>>>>> >>>>>>>>>> _______________________________________________ >>>>>>>>>> Architecture mailing list >>>>>>>>>> Architecture@wso2.org >>>>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> >>>>>>>>> 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 >>>>>>>>> Architecture@wso2.org >>>>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> *Eranda Rajapakshe* >>>>>>>> Computer Science and Engineering Undergraduate, >>>>>>>> University of Moratuwa. >>>>>>>> Tel : +94784822608 >>>>>>>> Email : erand...@gmail.com <eran...@wso2.com> >>>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> -- >>>>>>> *Eranda Rajapakshe* >>>>>>> Computer Science and Engineering Undergraduate, >>>>>>> University of Moratuwa. >>>>>>> Tel : +94784822608 >>>>>>> Email : erand...@gmail.com <eran...@wso2.com> >>>>>>> >>>>>>> _______________________________________________ >>>>>>> Architecture mailing list >>>>>>> Architecture@wso2.org >>>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>>> >>>>>>> >>>>>> >>>>>> >>>>>> -- >>>>>> >>>>>> 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 >>>>>> Architecture@wso2.org >>>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> *Eranda Rajapakshe* >>>>> Computer Science and Engineering Undergraduate, >>>>> University of Moratuwa. >>>>> Tel : +94784822608 >>>>> Email : erand...@gmail.com <eran...@wso2.com> >>>>> >>>>> _______________________________________________ >>>>> Architecture mailing list >>>>> Architecture@wso2.org >>>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>>> >>>>> >>>> >>>> >>>> -- >>>> Buddhima Wijeweera >>>> Software Engineer; WSO2 Inc.; http://wso2.com , >>>> >>>> Mobile: +94 71 427 9966 >>>> Email: buddh...@wso2.com >>>> Blog: https://buddhimawijeweera.wordpress.com >>>> GitHub Profile: https://github.com/Buddhima >>>> >>>> _______________________________________________ >>>> Architecture mailing list >>>> Architecture@wso2.org >>>> https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture >>>> >>>> >>> >>> >>> -- >>> *Eranda Rajapakshe* >>> Computer Science and Engineering Undergraduate, >>> University of Moratuwa. >>> Tel : +94784822608 >>> Email : erand...@gmail.com <eran...@wso2.com> >>> >> >> >> >> -- >> *Eranda Rajapakshe* >> Computer Science and Engineering Undergraduate, >> University of Moratuwa. >> Tel : +94784822608 >> Email : erand...@gmail.com <eran...@wso2.com> >> > > > > -- > *Eranda Rajapakshe* > Computer Science and Engineering Undergraduate, > University of Moratuwa. > Tel : +94784822608 > Email : erand...@gmail.com <eran...@wso2.com> > -- *Eranda Rajapakshe* Computer Science and Engineering Undergraduate, University of Moratuwa. Tel : +94784822608 Email : erand...@gmail.com <eran...@wso2.com>
_______________________________________________ Architecture mailing list Architecture@wso2.org https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture