On 3/23/07, David Illsley <[EMAIL PROTECTED]> wrote:

On 23/03/07, Afkham Azeez <[EMAIL PROTECTED]> wrote:
>
>
> On 3/23/07, David Illsley <[EMAIL PROTECTED]> wrote:
> > Um... a couple of questions..
> > 1. How can we have multiple configuration contexts active in the same
> > JVM if the factory hold the configuration context int a static field?
>
> Why would we need multiple configuration contexts for a single Axis2
> instance?

At the moment we can have more that 1 Axis2 instance running in a
single JVM. I'd like to keep that capability and this proposal (I
think) prevents that.


I don't think this will be a case in a production setup. Simply put, we
need some method to ensure that all objects within an Axis2 runtime use the
same configuration context.

And yet you don't want to deprecate a method which returns a held
reference to the ConfigurationContext?



The correct ConfigurationContext is linked with the  MessageContext when
the MessageContext is created. So there is no need to remove this method.

What is the scenario that you're trying to support?


The ability to reload the configurations of a group of Axis2 nodes in a
cluster without having to restart them one by one.

David

>
> > David
> >
> > On 23/03/07, Deepal Jayasinghe <[EMAIL PROTECTED]> wrote:
> > > I have no objection on doing this ,
> > > but inside ListenerManager we keep static reference to current
> > > ConfigurationContext , cant we use that to achieve your goal ?
> > >
> > > In the other hand it is nice to have getConfigurationContext method
in
> > > ConfigurationContextFactory , then all the ConfigurationContext
related
> > > logic will be there in that class.
> > >
> > > Thanks
> > > Deepal
> > >
> > > Chamikara Jayalath wrote:
> > >
> > > > [Added the prefix]
> > > >
> > > > ---------- Forwarded message ----------
> > > > From: *Afkham Azeez* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
> > > > Date: Mar 23, 2007 11:49 AM
> > > > Subject: Re: Introducing
> > > > ConfigurationContextFactory.getConfigurationContext()
> > > > To: Apache AXIS C Developers List <axis-c-dev@ws.apache.org
> > > > <mailto: axis-c-dev@ws.apache.org>>
> > > >
> > > > Sorry. This was intended for the Axis2 Java Dev list.
> > > >
> > > > -- Azeez
> > > >
> > > >
> > > > On 3/23/07, *Afkham Azeez* < [EMAIL PROTECTED]
> > > > <mailto:[EMAIL PROTECTED]> > wrote:
> > > >
> > > >     I'm currently implementing the Configuration management
portion of
> > > >     Axis2 clustering. This allows us to switch to a new
configuration,
> > > >     without restarting Axis2. However, I discovered that  there
are
> > > >     pointers from many classes to the ConfigurationContext, hence
> > > >     switching to a new ConfigurationContext & AxisConfiguration is
> messy.
> > > >
> > > >     Therefore I propose that we cache the ConfigurationContext
> > > >     instance in ConfigurationContextFactory. I am introducing the
> > > >     following to the ConfigurationContextFactory:
> > > >
> > > >
>
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
> > > >
> > > >         /**
> > > >          * The cached instance of the ConfigurationContext
> > > >          *
> > > >          * Other objects should not hold referencs to the
> > > >     ConfigurationContext, and should ALWAYS
> > > >          * get ConfigurationContext from this factory. This is to
> > > >     ensure that the ConfigurationContext
> > > >          * can be seamlessly switched.
> > > >          */
> > > >         private static ConfigurationContext configurationContext;
> > > >
> > > >         /**
> > > >          * Return the cached ConfigurationContext instance
> > > >          *
> > > >          * @return The cached ConfigurationContext instance
> > > >          */
> > > >         public static ConfigurationContext
getConfigurationContext() {
> > > >             return configurationContext;
> > > >         }
> > > >
>
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
> > > >
> > > >
> > > >     So, if someone calls a createConfigurationContext method on
this
> > > >     factory, the old configurationContext instance will be
replaced
> > > >     with the new one. Any object which wishes to get hold of the
> > > >     ConfigurationContext SHOULD call
> > > >
> ConfigurationContextFactory.getConfigurationContext(), and
> should
> > > >     never hold a pointer to the ConfigurationContext. This will
ensure
> > > >     that when the ConfigurationContext is changed, all objects in
the
> > > >     system will use the correct ConfigurationContext object, and
that
> > > >     the old object will get garbage collected.
> > > >
> > > >     What do you think about this approach?
> > > >
> > > >     --
> > > >     Thanks
> > > >     Afkham Azeez
> > > >
> > > >     http://www.wso2.org
> > > >     GPG Fingerprint: 643F C2AF EB78 F886 40C9  B2A2 4AE2 C887 665E
> 0760
> > > >
> > > >
> > > >
> > > >
> > > > --
> > > > Thanks
> > > > Afkham Azeez
> > > >
> > > > http://www.wso2.org
> > > > GPG Fingerprint: 643F C2AF EB78 F886 40C9  B2A2 4AE2 C887 665E
0760
> > >
> > >
> > > --
> > > Thanks,
> > > Deepal
> > >
> ................................................................
> > > "The highest tower is built one brick at a time"
> > >
> > >
> > >
> > >
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> > > For additional commands, e-mail: [EMAIL PROTECTED]
> > >
> > >
> >
> >
> > --
> > David Illsley - IBM Web Services Development
> >
> >
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
>
>
> --
> Thanks
> Afkham Azeez
>
> http://www.wso2.org
>  GPG Fingerprint: 643F C2AF EB78 F886 40C9  B2A2 4AE2 C887 665E 0760


--
David Illsley - IBM Web Services Development

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--
Thanks
Afkham Azeez

http://www.wso2.org
GPG Fingerprint: 643F C2AF EB78 F886 40C9  B2A2 4AE2 C887 665E 0760

Reply via email to