Hi all,
Sorry that I did not answer this mail earlier. I guess Ishould mention the trail of thoughts that led to the introduction of this "context bag".

The first and foremost requirement is the ability of the set of contexts to be serialized. The goal is to use the java serializer and hence we can't have cyclic references. So the hierarchy is supposed to be one way (no backward references). We decided that the best thing to do is to keep the original hierarchy and introduce a "context bag" which has the references to all the contexts in need.
This effectively allows the context tree to be serializable and let the handlers access the context bag instead of the  message context.
In my mind, Operation context <> MEPContext!
Operation context is a axis-server-lifetime object and MEP context only lasts until a the MEP is complete. In essence there can be multiple MEP contexts inside one particular Operation context. Simply, operation context is a container for the MEP contexts.
This is how I see the context hierarchy.

Engine Context (better called Global :))
|
---- Service Context
     |
     ---- Operation Context
           |
           ------ MEP context
                  |
                  ----- Message Context

Thoughts ?

Ajith                 

On Apr 7, 2005 9:38 PM, Deepal Jayasinghe <[EMAIL PROTECTED]> wrote:
Hi Venkat.

Its like this , Context Bag is NOT the root of all the context , and which
is the one passes around all the handlers in a chain. That is Context bag is
a bag which contains all the required contexts to invoke the handlers and
finally the service.

As you have mentioned there are same boxes in different locations , actually
what that implies is
1. direct arrow from Context bag => Keep references to those contexts in
Context bag so that if handler    want to access any context it can ask
those contexts from Context Bag.
2. As you can see there are some arrows from EngineContext and Mep context
=> that implies those them selves keep references to those contexts. As an
example if the MEP is IN-OUT then MEPconnext need to keep references to both
IN message context and Out Message context.

Note that : Only the parent keep its child references and child are not
going to keep any references to its parent.

And one thing if I am not mistaken we do not have context called global
context which is equivalent to EngineConetxt so the root of context is
EngineContext .

I am also confused the word EngineContext I rather like if we can change it
to Global Context

Comments .....


Deepal


> hi Deepal,
>
> I'm just trying to understand the diagram in axiscontext.jpg. Can you
> please add a little documentation also, as to what the arrows mean,
> and why we have the same boxes at multiple places etc. Is the Context
> Bag the root of all the contexts? I think the hierarchy that we
> discussed was a little different. Global Context -> Engine Context ->
> Service Context -> MEP Context -> Session Context -> Message Context,
> where each "->" stands for "is parent of" or "contains".
>
> confused myself :-)
> Venkat
>
> On Apr 7, 2005 9:17 AM, Deepal Jayasinghe <[EMAIL PROTECTED]> wrote:
>> hi
>>
>> sorry I forgot to upload the image , now its working pls try again.
>>
>>
>> Deepal
>>
>>
>> ----- Original Message -----
>> From: "Aleksander Slominski" <[EMAIL PROTECTED]>
>> To: <[email protected]>
>> Sent: Thursday, April 07, 2005 9:42 AM
>> Subject: Re: [Axis2] Purpose Deployment changes
>>
>> > Deepal Jayasinghe wrote:
>> >
>> >> Hi all;
>> >>
>> >>
>> >> At the axis2 face to face we did number of changes to axis2
>> >> architecture, had to get rid of EngineRegistry and introduce new set
>> >> of contexts ( www.apache.org/~deepal/axis2f2f/axiscontext.jpg
>> >> <http://www.apache.org/%7Edeepal/axis2f2f/axiscontext.jpg> )
>> >>
>> > this links does not work.
>> >
>> > should it be http://people.apache.org/~deepal/axis2f2f/newarchi.JPG ?
>> >
>> > alek
>> >
>> > --
>> > The best way to predict the future is to invent it - Alan Kay
>> >
>> >
>> >
>>
>>
>
>




--
Ajith Ranabahu

Reply via email to