axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Amila Suriarachchi" <amilasuriarach...@gmail.com>
Subject Re: Axis2 Architecture problems. ... not any more ;)
Date Tue, 29 May 2007 11:26:03 GMT
hi all,

Let me present this in a different way.

In the current architecture we can say "Operation has a set of handlers".
So it is represented as inflow/outflow in the AxisOperation.
we can say the first statement again as "hadler has a set of operations"
If we represent this then, Handler have set of registered Operations.

former is the way that current axis2 implementation has look into it. and
letter is the
way I am going to say.

In the current implementation at the deployment time it determines the
handler chain for the operation
and put it in the Operation. Which means it is possible to determine the
handler order at the deployment
time.
So when it processing the messages Axis2 Engine invoke the handlers of the
operation by taking one
by one. Here Axis2 Engine and handlers does not keep any data (i.e totally
stateless). i.e All the processing is done at the message processing time.
To do this it has introduced a lot of control variables.

In the new way What it does at the deployment time is it process the handler
details (in the operations) and
creates an Axis2 Engine which is capable of processing messages straight a
way. In fact this way handlers are state full.i.e they know next handler and
registered operations but they *do not change* when processing the messages.
As a result of this prepossessing we can reduce the message processing time.
and the complexity of the system. As a result . there is no need to keep the
handler information with the Axis2 operations.

As I have explained above this is about the re factoring the Axis2 Engine
and handler flow pattern.
So this should not make any harm to MEP processing and other stuffs (as I
believe).

So please try to think in the way I have given it here.

thanks,
Amila.


On 5/29/07, Deepal Jayasinghe <deepal@opensource.lk> wrote:
>
>
>
> Samisa Abeysinghe wrote:
> > Eran Chinthaka wrote:
> >> 6. About faults, yes I also agree with you for some extent. When Deepal
> >> initially put that we had some discussions on that.
> >>
> > "Why there is a separate flow to handle the Faults?"
> > With my understanding, the handers to be invoked when there is a
> > fault, could be different form the handlers that could be invoked when
> > there is no fault.
> > (Going by the definition, a flow is a collection of phases and a phase
> > is a collection of handlers). Now it is questionable if it is really
> > necessary to have different handlers for fault path or the same set of
> > handlers could deal with both fault cases and non fault cases.
> Same handler chain can do the processing of fault and non-fault case ,
> but need to have if statement  to check whether it is processing a fault
> or not.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-dev-help@ws.apache.org
>
>


-- 
Amila Suriarachchi,
WSO2 Inc.

Mime
View raw message