[
https://issues.apache.org/jira/browse/SANDESHA2-144?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Amila Chinthaka Suriarachchi updated SANDESHA2-144:
---------------------------------------------------
Attachment: mercury.tar.gz
Source code for mercury implementation
> Mercury, a new WS-RM implementation
> -----------------------------------
>
> Key: SANDESHA2-144
> URL: https://issues.apache.org/jira/browse/SANDESHA2-144
> Project: Sandesha2
> Issue Type: Improvement
> Reporter: Amila Chinthaka Suriarachchi
> Attachments: mercury.tar.gz
>
>
> hi all,
> Recently I developed a new WS-RM implementation called Mercury[1] (Mercury is
> the messenger of God) which runs on top of Axis2. This mail is to make a
> suggestion to donate the Mercury to Apache and hence start a new wscommons
> project called Mercury. Following is a full description about how I started
> it and current status of Mercury.
> Couple of months back I started looking into Sandesha2 to fix some reported
> issues. Actually what I wanted was to get familiar with the Sandesha2 code
> base. Although I went through some architecture documents and some of the
> code I could not really understand most of the Sandesha2 internals (My bad ).
> Then I went through the specifications and I saw a state machine model has
> proposed in WS-RM 1.1 specification.
> I really interested about it and started to model a state machine for RM 1.0.
> First I developed this using a pen and a paper and looked fine. Then I
> started implementing it.
> Although I have worked more than one year with Axis2 I did not have a much
> knowledge about axis2 kernel since my contribution mainly on Codegen.
> Therefore I wrote an Axis2 simulator[2] and on top of that I implemented my
> state machine. On the other hand concentrating more on Axis2 kernel would
> have made this state machine implementation very difficult. This allowed me
> to test this state machine model for various unreliable conditions and that
> worked fine.
> Then I started looking into real Axis2 kernel code and implemented this state
> machine model. For the first stage I implemented the WS-RM specification
> which is about the Duplex channel mode. Then I implemented the persistence
> model. This was very easy since the only thing I had to do was to persist the
> state machine. Finally I was able to implement the Replay model specification
> which uses the back channel to send the responses. I tested all these
> scenarios for many unreliable conditions and it worked fine.
> Since I myself is an apache comiter and I worked for an open source company I
> would like to start this as an apache project. I hope this would help others
> to use this code freely and make any contribution that they would like to
> made.
> The attached patch contains all the Architecture documents and details of the
> state machine model. I think going through the simulator code first would
> make it easy to understand the real implementation.
> The name Mercury and the package structures are simply the internal names I
> have chosen. I am open to change that name. (eg Sandesah3) And also I am open
> to make any changes to package structure, design to suit to any other
> requirements as well.
> We have our New year holidays (Sri Lankans celebrates New year on 13-14 april
> :) ) until 15th. So please take your time and feel free to make any thoughts.
> thanks,
> Amila.
> [1]mercury.tar.gz
> [2]Simulator.tar.gz
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]