|
Author: adrianc
Date: Sun Aug 19 08:46:21 2012 New Revision: 1374711 URL: http://svn.apache.org/viewvc?rev=1374711&view=rev Log: Some work on Start.java: 1. Removed unused method. 2. Consolidated/separated the Commons Daemon implementation - this just makes it easier to distinguish it from the rest of the code. 3. Changed some public methods to private, and added a private constructor. 4. Made ServerState enum public. These changes are in preparation for enabling client code to query the class for the server's state. Modified: ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java Modified: ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java?rev=1374711&r1=1374710&r2=1374711&view=diff ============================================================================== --- ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java (original) +++ ofbiz/trunk/framework/start/src/org/ofbiz/base/start/Start.java Sun Aug 19 08:46:21 2012 @@ -117,12 +117,16 @@ public class Start { } } + // ---------------------------------------------- // + private Config config = null; private List<String> loaderArgs = new ArrayList<String>(); private final ArrayList<StartupLoader> loaders = new ArrayList<StartupLoader>(); private AtomicReference<ServerState> serverState = new AtomicReference<ServerState>(ServerState.STARTING); private Thread adminPortThread = null; + private Start() {} + private void createListenerThread() throws StartupException { if (config.adminPort > 0) { this.adminPortThread = new AdminPortThread(); @@ -141,16 +145,7 @@ public class Start { } } - // org.apache.commons.daemon.Daemon.destroy() - public void destroy() { - // FIXME: undo init() calls. - } - - public void init(String[] args) throws StartupException { - init(args, true); - } - - public void init(String[] args, boolean fullInit) throws StartupException { + private void init(String[] args, boolean fullInit) throws StartupException { String globalSystemPropsFileName = System.getProperty("ofbiz.system.props"); if (globalSystemPropsFileName != null) { FileInputStream stream = null; @@ -268,7 +263,7 @@ public class Start { return response; } - public String shutdown() throws IOException { + private String shutdown() throws IOException { return sendSocketCommand(Control.SHUTDOWN); } @@ -298,20 +293,6 @@ public class Start { } } - // org.apache.commons.daemon.Daemon.start() - public void start() throws Exception { - if (!startStartLoaders()) { - if (this.serverState.get() == ServerState.STOPPING) { - return; - } else { - throw new Exception("Error during start."); - } - } - if (config.shutdownAfterLoad) { - stopServer(); - } - } - /** * Returns <code>true</code> if all loaders were started. * @@ -335,7 +316,7 @@ public class Start { return this.serverState.compareAndSet(ServerState.STARTING, ServerState.RUNNING); } - public String status() throws IOException { + private String status() throws IOException { try { return sendSocketCommand(Control.STATUS); } catch (ConnectException e) { @@ -345,16 +326,41 @@ public class Start { } } - // org.apache.commons.daemon.Daemon.stop() - public void stop() { + private void stopServer() { shutdownServer(); + System.exit(0); + } + + // ----------------------------------------------- // + // org.apache.commons.daemon.Daemon implementation // + // ----------------------------------------------- // + + // org.apache.commons.daemon.Daemon.destroy() + public void destroy() { + // FIXME: undo init() calls. } - public void stopServer() { + // org.apache.commons.daemon.Daemon.start() + public void start() throws Exception { + if (!startStartLoaders()) { + if (this.serverState.get() == ServerState.STOPPING) { + return; + } else { + throw new Exception("Error during start."); + } + } + if (config.shutdownAfterLoad) { + stopServer(); + } + } + + // org.apache.commons.daemon.Daemon.stop() + public void stop() { shutdownServer(); - System.exit(0); } + // ----------------------------------------------- // + private class AdminPortThread extends Thread { private ServerSocket serverSocket = null; @@ -447,7 +453,7 @@ public class Start { abstract void processRequest(Start start, PrintWriter writer); } - private enum ServerState { + public enum ServerState { STARTING, RUNNING, STOPPING; public String toString() { |
| Free forum by Nabble | Edit this page |
