Package org.apache.catalina.core
Class StandardServer
java.lang.Object
org.apache.catalina.util.LifecycleBase
org.apache.catalina.util.LifecycleMBeanBase
org.apache.catalina.core.StandardServer
- All Implemented Interfaces:
- MBeanRegistration,- JmxEnabled,- Lifecycle,- Server
Standard implementation of the Server interface, available for use (but not required) when deploying and
 starting Catalina.
- Author:
- Craig R. McClanahan
- 
Nested Class SummaryNested classes/interfaces inherited from interface org.apache.catalina.LifecycleLifecycle.SingleUse
- 
Field SummaryFields inherited from interface org.apache.catalina.LifecycleAFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidAdd a property change listener to this component.voidaddService(Service service) Add a new Service to the set of defined Services.voidawait()Wait until a proper shutdown command is received, then return.protected voidSub-classes wishing to perform additional clean-up should override this method, ensuring that super.destroyInternal() is the last call in the overriding method.findService(String name) Find the specified ServiceService[]Return the address on which we listen to for shutdown commands.Return the outer Catalina startup/shutdown component if present.protected StringObtain the MBean domain for this server.Return the global naming resources context.Return the global naming resources.protected StringAllow sub-classes to specify the key properties component of theObjectNamethat will be used to register this component.Return the parent class loader for this component.intintgetPort()Return the port number we listen to for shutdown commands.intGet the number that offsets the port used for shutdown commands.intGet the actual port on which server is listening for the shutdown commands.Return the current server built timestampReport the current Tomcat Server Release numberReturn the current server's version number.Return the shutdown command string we are waiting for.intGet the utility thread count.booleanGet if the utility threads are daemon threads.protected voidInvoke a pre-startup initialization.voidRemove a property change listener from this component.voidremoveService(Service service) Remove the specified Service from the set associated from this Server.voidsetAddress(String address) Set the address on which we listen to for shutdown commands.voidsetCatalina(Catalina catalina) Set the outer Catalina startup/shutdown component if present.voidsetCatalinaBase(File catalinaBase) Set the configured base (instance) directory.voidsetCatalinaHome(File catalinaHome) Set the configured home (binary) directory.voidsetGlobalNamingContext(Context globalNamingContext) Set the global naming resources context.voidsetGlobalNamingResources(NamingResourcesImpl globalNamingResources) Set the global naming resources.voidsetParentClassLoader(ClassLoader parent) Set the parent class loader for this server.voidsetPeriodicEventDelay(int periodicEventDelay) Set the new period between two lifecycle events in seconds.voidsetPort(int port) Set the port number we listen to for shutdown commands.voidsetPortOffset(int portOffset) Set the number that offsets the server port used for shutdown commands.voidsetShutdown(String shutdown) Set the shutdown command we are waiting for.voidsetUtilityThreads(int utilityThreads) Set the utility thread count.voidsetUtilityThreadsAsDaemon(boolean utilityThreadsAsDaemon) Set the utility threads daemon flag.protected voidStart nested components (Services) and implement the requirements ofLifecycleBase.startInternal().voidprotected voidStop nested components (Services) and implement the requirements ofLifecycleBase.stopInternal().voidWrite the configuration information for this entireServerout to the server.xml configuration file.voidstoreContext(Context context) Write the configuration information forContextout to the specified configuration file.toString()Return a String representation of this component.Methods inherited from class org.apache.catalina.util.LifecycleMBeanBasegetDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister, unregisterMethods inherited from class org.apache.catalina.util.LifecycleBaseaddLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stopMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.catalina.LifecycleaddLifecycleListener, destroy, findLifecycleListeners, getState, getStateName, init, removeLifecycleListener, start, stop
- 
Constructor Details- 
StandardServerpublic StandardServer()Construct a default instance of this class.
 
- 
- 
Method Details- 
getNamingToken- Specified by:
- getNamingTokenin interface- Server
- Returns:
- the token necessary for operations on the associated JNDI naming context.
 
- 
getGlobalNamingContextReturn the global naming resources context.- Specified by:
- getGlobalNamingContextin interface- Server
- Returns:
- the global naming resources context.
 
- 
setGlobalNamingContextSet the global naming resources context.- Parameters:
- globalNamingContext- The new global naming resource context
 
- 
getGlobalNamingResourcesReturn the global naming resources.- Specified by:
- getGlobalNamingResourcesin interface- Server
- Returns:
- the global naming resources.
 
- 
setGlobalNamingResourcesSet the global naming resources.- Specified by:
- setGlobalNamingResourcesin interface- Server
- Parameters:
- globalNamingResources- The new global naming resources
 
- 
getServerInfoReport the current Tomcat Server Release number- Returns:
- Tomcat release identifier
 
- 
getServerBuiltReturn the current server built timestamp- Returns:
- server built timestamp.
 
- 
getServerNumberReturn the current server's version number.- Returns:
- server's version number.
 
- 
getPortpublic int getPort()Return the port number we listen to for shutdown commands.
- 
setPortpublic void setPort(int port) Set the port number we listen to for shutdown commands.
- 
getPortOffsetpublic int getPortOffset()Description copied from interface:ServerGet the number that offsets the port used for shutdown commands. For example, if port is 8005, and portOffset is 1000, the server listens at 9005.- Specified by:
- getPortOffsetin interface- Server
- Returns:
- the port offset
 
- 
setPortOffsetpublic void setPortOffset(int portOffset) Description copied from interface:ServerSet the number that offsets the server port used for shutdown commands. For example, if port is 8005, and you set portOffset to 1000, connector listens at 9005.- Specified by:
- setPortOffsetin interface- Server
- Parameters:
- portOffset- sets the port offset
 
- 
getPortWithOffsetpublic int getPortWithOffset()Description copied from interface:ServerGet the actual port on which server is listening for the shutdown commands. If you do not set port offset, port is returned. If you set port offset, port offset + port is returned.- Specified by:
- getPortWithOffsetin interface- Server
- Returns:
- the port with offset
 
- 
getAddressReturn the address on which we listen to for shutdown commands.- Specified by:
- getAddressin interface- Server
- Returns:
- the address on which we listen to for shutdown commands.
 
- 
setAddressSet the address on which we listen to for shutdown commands.- Specified by:
- setAddressin interface- Server
- Parameters:
- address- The new address
 
- 
getShutdownReturn the shutdown command string we are waiting for.- Specified by:
- getShutdownin interface- Server
- Returns:
- the shutdown command string we are waiting for.
 
- 
setShutdownSet the shutdown command we are waiting for.- Specified by:
- setShutdownin interface- Server
- Parameters:
- shutdown- The new shutdown command
 
- 
getCatalinaReturn the outer Catalina startup/shutdown component if present.- Specified by:
- getCatalinain interface- Server
- Returns:
- the outer Catalina startup/shutdown component if present.
 
- 
setCatalinaSet the outer Catalina startup/shutdown component if present.- Specified by:
- setCatalinain interface- Server
- Parameters:
- catalina- the outer Catalina component
 
- 
getUtilityThreadspublic int getUtilityThreads()Description copied from interface:ServerGet the utility thread count.- Specified by:
- getUtilityThreadsin interface- Server
- Returns:
- the thread count
 
- 
setUtilityThreadspublic void setUtilityThreads(int utilityThreads) Description copied from interface:ServerSet the utility thread count.- Specified by:
- setUtilityThreadsin interface- Server
- Parameters:
- utilityThreads- the new thread count
 
- 
getUtilityThreadsAsDaemonpublic boolean getUtilityThreadsAsDaemon()Get if the utility threads are daemon threads.- Returns:
- the threads daemon flag
 
- 
setUtilityThreadsAsDaemonpublic void setUtilityThreadsAsDaemon(boolean utilityThreadsAsDaemon) Set the utility threads daemon flag. The default value is true.- Parameters:
- utilityThreadsAsDaemon- the new thread daemon flag
 
- 
getPeriodicEventDelaypublic int getPeriodicEventDelay()- Returns:
- The period between two lifecycle events, in seconds
 
- 
setPeriodicEventDelaypublic void setPeriodicEventDelay(int periodicEventDelay) Set the new period between two lifecycle events in seconds.- Parameters:
- periodicEventDelay- The period in seconds, negative or zero will disable events
 
- 
addServiceAdd a new Service to the set of defined Services.- Specified by:
- addServicein interface- Server
- Parameters:
- service- The Service to be added
 
- 
stopAwaitpublic void stopAwait()
- 
awaitpublic void await()Wait until a proper shutdown command is received, then return. This keeps the main thread alive - the thread pool listening for http connections is daemon threads.
- 
findServiceDescription copied from interface:ServerFind the specified Service- Specified by:
- findServicein interface- Server
- Parameters:
- name- Name of the Service to be returned
- Returns:
- the specified Service (if it exists); otherwise return null.
 
- 
findServices- Specified by:
- findServicesin interface- Server
- Returns:
- The array of Services defined within this Server.
 
- 
getServiceNames- Returns:
- the JMX service names.
 
- 
removeServiceRemove the specified Service from the set associated from this Server.- Specified by:
- removeServicein interface- Server
- Parameters:
- service- The Service to be removed
 
- 
getCatalinaBase- Specified by:
- getCatalinaBasein interface- Server
- Returns:
- the configured base (instance) directory. Note that home and base
 may be the same (and are by default). If this is not set the value
 returned by Server.getCatalinaHome()will be used.
 
- 
setCatalinaBaseDescription copied from interface:ServerSet the configured base (instance) directory. Note that home and base may be the same (and are by default).- Specified by:
- setCatalinaBasein interface- Server
- Parameters:
- catalinaBase- the configured base directory
 
- 
getCatalinaHome- Specified by:
- getCatalinaHomein interface- Server
- Returns:
- the configured home (binary) directory. Note that home and base may be the same (and are by default).
 
- 
setCatalinaHomeDescription copied from interface:ServerSet the configured home (binary) directory. Note that home and base may be the same (and are by default).- Specified by:
- setCatalinaHomein interface- Server
- Parameters:
- catalinaHome- the configured home directory
 
- 
addPropertyChangeListenerAdd a property change listener to this component.- Parameters:
- listener- The listener to add
 
- 
removePropertyChangeListenerRemove a property change listener from this component.- Parameters:
- listener- The listener to remove
 
- 
toStringReturn a String representation of this component.
- 
storeConfigWrite the configuration information for this entireServerout to the server.xml configuration file.- Throws:
- InstanceNotFoundException- if the managed resource object cannot be found
- MBeanException- if the initializer of the object throws an exception, or persistence is not supported
- RuntimeOperationsException- if an exception is reported by the persistence mechanism
 
- 
storeContextWrite the configuration information forContextout to the specified configuration file.- Parameters:
- context- the context which should save its configuration
- Throws:
- InstanceNotFoundException- if the managed resource object cannot be found
- MBeanException- if the initializer of the object throws an exception or persistence is not supported
- RuntimeOperationsException- if an exception is reported by the persistence mechanism
 
- 
startInternalStart nested components (Services) and implement the requirements ofLifecycleBase.startInternal().- Specified by:
- startInternalin class- LifecycleBase
- Throws:
- LifecycleException- if this component detects a fatal error that prevents this component from being used
 
- 
stopInternalStop nested components (Services) and implement the requirements ofLifecycleBase.stopInternal().- Specified by:
- stopInternalin class- LifecycleBase
- Throws:
- LifecycleException- if this component detects a fatal error that needs to be reported
 
- 
initInternalInvoke a pre-startup initialization. This is used to allow connectors to bind to restricted ports under Unix operating environments.- Overrides:
- initInternalin class- LifecycleMBeanBase
- Throws:
- LifecycleException- If the initialisation fails
 
- 
destroyInternalDescription copied from class:LifecycleMBeanBaseSub-classes wishing to perform additional clean-up should override this method, ensuring that super.destroyInternal() is the last call in the overriding method.- Overrides:
- destroyInternalin class- LifecycleMBeanBase
- Throws:
- LifecycleException- If the destruction fails
 
- 
getParentClassLoaderReturn the parent class loader for this component.- Specified by:
- getParentClassLoaderin interface- Server
- Returns:
- the parent class loader for this component. If not set, return
 Server.getCatalina()Catalina.getParentClassLoader(). If catalina has not been set, return the system class loader.
 
- 
setParentClassLoaderSet the parent class loader for this server.- Specified by:
- setParentClassLoaderin interface- Server
- Parameters:
- parent- The new parent class loader
 
- 
getDomainInternalObtain the MBean domain for this server. The domain is obtained using the following search order:- Specified by:
- getDomainInternalin class- LifecycleMBeanBase
- Returns:
- The name of the domain to use to register MBeans.
 
- 
getObjectNameKeyPropertiesDescription copied from class:LifecycleMBeanBaseAllow sub-classes to specify the key properties component of theObjectNamethat will be used to register this component.- Specified by:
- getObjectNameKeyPropertiesin class- LifecycleMBeanBase
- Returns:
- The string representation of the key properties component of the
          desired ObjectName
 
- 
getUtilityExecutor- Specified by:
- getUtilityExecutorin interface- Server
- Returns:
- the utility executor managed by the Service.
 
 
-