Server.java |
/*************************************** * * * JBoss: The OpenSource J2EE WebOS * * * * Distributable under LGPL license. * * See terms of license at gnu.org. * * * ***************************************/ package org.jboss.system.server; import java.util.Properties; /** * The interface of the basic JBoss server component. * * @version <tt>$Revision: 1.4 $</tt> * @author <a href="mailto:jason@planet57.com">Jason Dillon</a> */ public interface Server { /** The JMX notification event type sent on end of server startup */ public final String START_NOTIFICATION_TYPE = "org.jboss.system.server.started"; /** The JMX notification event type sent on begin of the server shutdown */ public final String STOP_NOTIFICATION_TYPE = "org.jboss.system.server.stopped"; /** * Initialize the Server instance. * * @param props The configuration properties for the server. * @return Typed server configuration object. * * @throws IllegalStateException Already initialized. * @throws Exception Failed to initialize. */ void init(Properties props) throws IllegalStateException, Exception; /** * Get the typed server configuration object which the * server has been initalized to use. * * @return Typed server configuration object. * * @throws IllegalStateException Not initialized. */ ServerConfig getConfig() throws IllegalStateException; /** * Start the Server instance. * * @throws IllegalStateException Already started or not initialized. * @throws Exception Failed to start. */ void start() throws IllegalStateException, Exception; /** * Check if the server is started. * * @return True if the server is started, else false. */ boolean isStarted(); /** * Shutdown the Server instance and run shutdown hooks. * * <p>If the exit on shutdown flag is true, then {@link #exit} * is called, else only the shutdown hook is run. * * @throws IllegalStateException No started. */ void shutdown() throws IllegalStateException; /** * Shutdown the server, the JVM and run shutdown hooks. * * @param exitcode The exit code returned to the operating system. */ void exit(int exitcode); /** * Forcibly terminates the currently running Java virtual machine. * * @param exitcode The exit code returned to the operating system. */ void halt(int exitcode); }
Server.java |