Deepal, What if someone wants to deploy 2 services?
thanks, dims On 6/15/07, Deepal Jayasinghe <[EMAIL PROTECTED]> wrote:
Hi Dims, Why did you do this change , now if I want to deploy the service how many additional step I have to do , why dont we make this simple as possible. The whole idea of this class is to make the simple case so simple. So as we had before , when some one call deployService , if the service is not running pls start that else just deploy the service. As I can see now we have make the simple thing too complicated , what I really wanted was the following and that is why I introduced the class. *new AxisServer().deployService("className"); *I am ok with the following changes , since is it the right thing public void start()throws AxisFault { listenerManager = new ListenerManager(); listenerManager.startSystem(getConfigurationContext()); } public ConfigurationContext getConfigurationContext() throws AxisFault { if(configContext == null){ configContext = createDefaultConfigurationContext(); } return configContext; } ButI am -1 on the other changes to AxisServer , specially removing start method from the deployService() * *Thanks Deepal > Author: dims > Date: Fri Jun 15 19:46:15 2007 > New Revision: 547848 > > URL: http://svn.apache.org/viewvc?view=rev&rev=547848 > Log: > - Actually use the AxisServer somewhere relevent :) > - No, i would not want to start as a side effect of a deployService > - Make configContext protected so that folks can easily extend the class > - Add a createDefaultConfigurationContext for easy extensibility as well > - Don't use short cuts in method names. > - getConfigurationContext creates one using createDefaultConfigurationContext if configContext is null. > > > Modified: > webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisServer.java > webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/SimpleAxis2Server.java > > Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisServer.java > URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisServer.java?view=diff&rev=547848&r1=547847&r2=547848 > ============================================================================== > --- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisServer.java (original) > +++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/engine/AxisServer.java Fri Jun 15 19:46:15 2007 > @@ -29,7 +29,15 @@ > */ > public class AxisServer { > > - private ConfigurationContext configContext; > + protected ConfigurationContext configContext; > + protected ListenerManager listenerManager; > + > + public AxisServer() throws Exception { > + } > + > + protected ConfigurationContext createDefaultConfigurationContext() throws AxisFault { > + return ConfigurationContextFactory.createConfigurationContextFromFileSystem(null); > + } > > /** > * Will create a configuration context from the avialable data and then it > @@ -37,9 +45,8 @@ > * @throws AxisFault if something went wrong > */ > public void start()throws AxisFault { > - configContext = ConfigurationContextFactory.createConfigurationContextFromFileSystem(null); > - ListenerManager listenerManager = new ListenerManager(); > - listenerManager.startSystem(configContext); > + listenerManager = new ListenerManager(); > + listenerManager.startSystem(getConfigurationContext()); > } > > /** > @@ -48,10 +55,7 @@ > * @throws AxisFault : If something went wrong > */ > public void deployService(String serviceClassName) throws AxisFault{ > - if(configContext==null){ > - start(); > - } > - AxisConfiguration axisConfig = configContext.getAxisConfiguration(); > + AxisConfiguration axisConfig = getConfigurationContext().getAxisConfiguration(); > AxisService service = AxisService.createService(serviceClassName,axisConfig); > axisConfig.addService(service); > } > @@ -62,12 +66,25 @@ > } > } > > - > - public ConfigurationContext getConfigContext() { > + /** > + * Creates a default configuration context if one is not set already via setConfigurationContext > + * > + * @return > + * @throws AxisFault > + */ > + public ConfigurationContext getConfigurationContext() throws AxisFault { > + if(configContext == null){ > + configContext = createDefaultConfigurationContext(); > + } > return configContext; > } > > - public void setConfigContext(ConfigurationContext configContext) { > + /** > + * Set the configuration context. Please call this before you call deployService or start method > + * > + * @param configContext > + */ > + public void setConfigurationContext(ConfigurationContext configContext) { > this.configContext = configContext; > } > } > > Modified: webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/SimpleAxis2Server.java > URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/SimpleAxis2Server.java?view=diff&rev=547848&r1=547847&r2=547848 > ============================================================================== > --- webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/SimpleAxis2Server.java (original) > +++ webservices/axis2/trunk/java/modules/kernel/src/org/apache/axis2/transport/SimpleAxis2Server.java Fri Jun 15 19:46:15 2007 > @@ -19,10 +19,12 @@ > import org.apache.axis2.context.ConfigurationContext; > import org.apache.axis2.context.ConfigurationContextFactory; > import org.apache.axis2.engine.ListenerManager; > +import org.apache.axis2.engine.AxisServer; > import org.apache.axis2.transport.http.SimpleHTTPServer; > import org.apache.axis2.util.CommandLineOption; > import org.apache.axis2.util.CommandLineOptionParser; > import org.apache.axis2.util.OptionsValidator; > +import org.apache.axis2.AxisFault; > import org.apache.commons.logging.Log; > import org.apache.commons.logging.LogFactory; > > @@ -30,7 +32,7 @@ > import java.util.List; > import java.util.Map; > > -public class SimpleAxis2Server { > +public class SimpleAxis2Server extends AxisServer { > > private static final Log log = LogFactory.getLog(SimpleHTTPServer.class); > > @@ -38,6 +40,13 @@ > > public static int DEFAULT_PORT = 8080; > > + public SimpleAxis2Server ( > + String repoLocation, > + String confLocation) throws Exception { > + configContext = ConfigurationContextFactory > + .createConfigurationContextFromFileSystem(repoLocation, > + confLocation); > + } > > /** > * @param args > @@ -82,12 +91,8 @@ > } > > try { > - ConfigurationContext configctx = ConfigurationContextFactory > - .createConfigurationContextFromFileSystem(repoLocation, > - confLocation); > - ListenerManager listenerManager = new ListenerManager(); > - listenerManager.init(configctx); > - listenerManager.start(); > + SimpleAxis2Server server = new SimpleAxis2Server(repoLocation, confLocation); > + server.start(); > log.info("[SimpleAxisServer] Started"); > } catch (Throwable t) { > log.fatal("[SimpleAxisServer] Shutting down. Error starting SimpleAxisServer", t); > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > > -- 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]
-- Davanum Srinivas :: http://davanum.wordpress.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]