I agree we don't want to add RM specific APIs to Axis2. However, as I think my long post, and Chamikara's much neater append point out, there is a way of looking at these as being general concepts in WS and not specific RM concepts. In fact the Key concept is something that the Sandesha guys invented and is not part of the RM spec. I believe that the same Key and Last Message concepts could also help when you switch on WS-SecureConversation. They are just basic ideas about how WS works when not everything is a single call and we start building conversations.
What is driving this is a belief in COMPOSABILITY. Composability should mean not having to change my code for a given WS-* standard. But it also means that the core model has to support composability. WS-Security was lucky, we didn't need to change any code, but its also inefficient, so we've had to invent SecureConversation. I think that the idea of sequences and conversations are generic new change the core model of WS and should be reflected in the Axis2 API.
Paul
On 10/29/05, Jaliya Ekanayake <[EMAIL PROTECTED]> wrote:
I agree, that we don't need RM methods without RM. jar, but if we analsye
the common requirements from RM or WS-SecCon etc, we may endup with maximum
5-10 new setters for the call API. Afterall these moduels are intended for
axis and it will be easy and clear for the users to use them in the Call API
rather than having another Context or some other Object to transfer
properties.
Thanks,
Jaliya
----- Original Message -----
From: "Srinath Perera" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Saturday, October 29, 2005 10:11 AM
Subject: Re: [Axis2] Implications of WSRM interfaces on Axis2 ClientAPI
why u need RM methods when u do not have RM jar in the classpath?
On 10/29/05, Jaliya Ekanayake < [EMAIL PROTECTED]> wrote:
> This is what we have in Sandesha 1.0. It introduce this new RMContext that
> requires the jar to be in the classpath.
>
> Thanks,
>
> Jaliya
> ----- Original Message -----
> From: "Srinath Perera" <[EMAIL PROTECTED]>
> To: <[email protected]>
> Sent: Saturday, October 29, 2005 7:37 AM
> Subject: Re: [Axis2] Implications of WSRM interfaces on Axis2 ClientAPI
>
>
> I am 0- on moving the constants to the core
>
> how about following
>
> Call call = new Call();
> call.engageModule("RM");
> RMContext rcontext = (RMContext)call.getExtentionContext(RM_MODULE);
> //return the RMContext from extension registry
>
> RMContext will have RM specific methods and provide way to monitor the RM
>
> IMHO once the user enable RM, user is not allowed to set sequence id
> ect .. at the first message RM will automatically call create sequence
> ..ect and provide sequenceIDs/UUID for the messages. Once the RM is
> started Axis and RM control what happen .. User can quary status via
> RMContext .. He may have a terminateSequence method() .. for premature
> termination
>
> Thanks
> Srinath
>
>
>
