+1, actually I also generally like the idea of separating Axis2 related 
functionality from Synapse functionality. Also this is currently quite hard as 
there are a lot of places where it is very closely coupled and could not easily 
be replaced. In some areas it only looks quite open at the first glance when 
noticing factories which could also create other specific instances.

 

Anyway you are right about the targeted separation. With my changes I also 
tried to follow this road. That’s why I for example moved all the Axis2 
transport related action in a helper class within an Axis2 package. I also 
removed direct references to any specific scheduler implementation.

 

I think this all could also help to separate the user API of Synapse to an own 
artefact with clear dependencies. This is something I would dream of for the 
next major release after 1.3.

 

Regards,

    Eric

 

________________________________

From: Ruwan Linton [mailto:[email protected]] 
Sent: Saturday, May 02, 2009 12:35 AM
To: [email protected]
Subject: Re: [jira] Commented: (SYNAPSE-537) Possibility to put server in 
maintenance mode and reload synapse configuration via JMX

 

+1 for the propose refactoring... I think it is better to move the 
Axis2SynapseController to the package 'synapse.server.axis2'.

Would you like to do this as well?

Thanks,
Ruwan

On Sat, May 2, 2009 at 3:48 AM, Hubert, Eric <[email protected]> wrote:

> With few other changes I have committed the patch. I must say this is a
> great improvement and this also fixes the shutdown issue.

Great to hear that. Ruwan, thanks for reviewing and applying this patch!

What do you and others think about my suggestion of moving all the server 
related classes from the top level to a new sub package server.

Here is my original comment from the JIRA:

> > While working on this patch I thought about moving some of the classes
> in the synapse top level package to a new server subpackage. I actually
> did not perform this change to ease the review, but I still think it would
> be a good idea.
> > So what about moving the following classes:
> > Axis2SynapseController
> > JmxAdapter
> > ServerConfigurationInformation
> > ServerConfigurationInformationFactory
> > ServerContextInformation
> > ServerManager
> > ServerState
> > ServerStateDetectionStrategy
> > SynapseController
> > SynapseControllerFactory
> > SynapseServer
> > to
> > synapse.server
> > and
> > ServerManagerView
> > ServerManagerViewMBean
> > to
> > synapse.server.mbean (maybe also renaming them to ServerManagerControl
> and ServerManagerControlMBean.




-- 
Ruwan Linton
Senior Software Engineer & Product Manager; WSO2 ESB; http://wso2.org/esb
WSO2 Inc.; http://wso2.org
email: [email protected]; cell: +94 77 341 3097
blog: http://ruwansblog.blogspot.com 

Reply via email to