public final class StandardServer extends LifecycleMBeanBase implements Server
Lifecycle.SingleUse
Modifier and Type | Field and Description |
---|---|
protected int |
periodicEventDelay
The lifecycle event period in seconds.
|
protected int |
utilityThreads
The number of threads available to process utility tasks in this service.
|
protected boolean |
utilityThreadsAsDaemon
The utility threads daemon flag.
|
mserver
AFTER_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 and Description |
---|
StandardServer()
Construct a default instance of this class.
|
Modifier and Type | Method and Description |
---|---|
void |
addPropertyChangeListener(PropertyChangeListener listener)
Add a property change listener to this component.
|
void |
addService(Service service)
Add a new Service to the set of defined Services.
|
void |
await()
Wait until a proper shutdown command is received, then return.
|
protected void |
destroyInternal()
Sub-classes wishing to perform additional clean-up should override this
method, ensuring that super.destroyInternal() is the last call in the
overriding method.
|
Service |
findService(String name)
Find the specified Service
|
Service[] |
findServices() |
String |
getAddress()
Return the address on which we listen to for shutdown commands.
|
Catalina |
getCatalina()
Return the outer Catalina startup/shutdown component if present.
|
File |
getCatalinaBase() |
File |
getCatalinaHome() |
protected String |
getDomainInternal()
Obtain the MBean domain for this server.
|
Context |
getGlobalNamingContext()
Return the global naming resources context.
|
NamingResourcesImpl |
getGlobalNamingResources()
Return the global naming resources.
|
Object |
getNamingToken() |
protected String |
getObjectNameKeyProperties()
Allow sub-classes to specify the key properties component of the
ObjectName that will be used to register this component. |
ClassLoader |
getParentClassLoader()
Return the parent class loader for this component.
|
int |
getPeriodicEventDelay() |
int |
getPort()
Return the port number we listen to for shutdown commands.
|
int |
getPortOffset()
Get the number that offsets the port used for shutdown commands.
|
int |
getPortWithOffset()
Get the actual port on which server is listening for the shutdown commands.
|
String |
getServerBuilt()
Return the current server built timestamp
|
String |
getServerInfo()
Report the current Tomcat Server Release number
|
String |
getServerNumber()
Return the current server's version number.
|
ObjectName[] |
getServiceNames() |
String |
getShutdown()
Return the shutdown command string we are waiting for.
|
ScheduledExecutorService |
getUtilityExecutor() |
int |
getUtilityThreads()
Get the utility thread count.
|
boolean |
getUtilityThreadsAsDaemon()
Get if the utility threads are daemon threads.
|
protected void |
initInternal()
Invoke a pre-startup initialization.
|
void |
removePropertyChangeListener(PropertyChangeListener listener)
Remove a property change listener from this component.
|
void |
removeService(Service service)
Remove the specified Service from the set associated from this
Server.
|
void |
setAddress(String address)
Set the address on which we listen to for shutdown commands.
|
void |
setCatalina(Catalina catalina)
Set the outer Catalina startup/shutdown component if present.
|
void |
setCatalinaBase(File catalinaBase)
Set the configured base (instance) directory.
|
void |
setCatalinaHome(File catalinaHome)
Set the configured home (binary) directory.
|
void |
setGlobalNamingContext(Context globalNamingContext)
Set the global naming resources context.
|
void |
setGlobalNamingResources(NamingResourcesImpl globalNamingResources)
Set the global naming resources.
|
void |
setParentClassLoader(ClassLoader parent)
Set the parent class loader for this server.
|
void |
setPeriodicEventDelay(int periodicEventDelay)
Set the new period between two lifecycle events in seconds.
|
void |
setPort(int port)
Set the port number we listen to for shutdown commands.
|
void |
setPortOffset(int portOffset)
Set the number that offsets the server port used for shutdown commands.
|
void |
setShutdown(String shutdown)
Set the shutdown command we are waiting for.
|
void |
setUtilityThreads(int utilityThreads)
Set the utility thread count.
|
void |
setUtilityThreadsAsDaemon(boolean utilityThreadsAsDaemon)
Set the utility threads daemon flag.
|
protected void |
startInternal()
Start nested components (
Service s) and implement the requirements
of LifecycleBase.startInternal() . |
protected void |
startPeriodicLifecycleEvent() |
void |
stopAwait() |
protected void |
stopInternal()
Stop nested components (
Service s) and implement the requirements
of LifecycleBase.stopInternal() . |
void |
storeConfig()
Write the configuration information for this entire
Server
out to the server.xml configuration file. |
void |
storeContext(Context context)
Write the configuration information for
Context
out to the specified configuration file. |
String |
toString()
Return a String representation of this component.
|
getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister, unregister
addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, getThrowOnFailure, init, removeLifecycleListener, setState, setState, setThrowOnFailure, start, stop
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
addLifecycleListener, destroy, findLifecycleListeners, getState, getStateName, init, removeLifecycleListener, start, stop
protected int utilityThreads
protected boolean utilityThreadsAsDaemon
protected int periodicEventDelay
public StandardServer()
public Object getNamingToken()
getNamingToken
in interface Server
public Context getGlobalNamingContext()
getGlobalNamingContext
in interface Server
public void setGlobalNamingContext(Context globalNamingContext)
globalNamingContext
- The new global naming resource contextpublic NamingResourcesImpl getGlobalNamingResources()
getGlobalNamingResources
in interface Server
public void setGlobalNamingResources(NamingResourcesImpl globalNamingResources)
setGlobalNamingResources
in interface Server
globalNamingResources
- The new global naming resourcespublic String getServerInfo()
public String getServerBuilt()
public String getServerNumber()
public int getPort()
getPort
in interface Server
Server.getPortOffset()
,
Server.getPortWithOffset()
public void setPort(int port)
setPort
in interface Server
port
- The new port numberServer.setPortOffset(int)
public int getPortOffset()
Server
getPortOffset
in interface Server
public void setPortOffset(int portOffset)
Server
setPortOffset
in interface Server
portOffset
- sets the port offsetpublic int getPortWithOffset()
Server
getPortWithOffset
in interface Server
public String getAddress()
getAddress
in interface Server
public void setAddress(String address)
setAddress
in interface Server
address
- The new addresspublic String getShutdown()
getShutdown
in interface Server
public void setShutdown(String shutdown)
setShutdown
in interface Server
shutdown
- The new shutdown commandpublic Catalina getCatalina()
getCatalina
in interface Server
public void setCatalina(Catalina catalina)
setCatalina
in interface Server
catalina
- the outer Catalina componentpublic int getUtilityThreads()
Server
getUtilityThreads
in interface Server
public void setUtilityThreads(int utilityThreads)
Server
setUtilityThreads
in interface Server
utilityThreads
- the new thread countpublic boolean getUtilityThreadsAsDaemon()
public void setUtilityThreadsAsDaemon(boolean utilityThreadsAsDaemon)
utilityThreadsAsDaemon
- the new thread daemon flagpublic final int getPeriodicEventDelay()
public final void setPeriodicEventDelay(int periodicEventDelay)
periodicEventDelay
- The period in seconds, negative or zero will
disable eventspublic void addService(Service service)
addService
in interface Server
service
- The Service to be addedpublic void stopAwait()
public void await()
public Service findService(String name)
Server
findService
in interface Server
name
- Name of the Service to be returnednull
.public Service[] findServices()
findServices
in interface Server
public ObjectName[] getServiceNames()
public void removeService(Service service)
removeService
in interface Server
service
- The Service to be removedpublic File getCatalinaBase()
getCatalinaBase
in interface Server
Server.getCatalinaHome()
will be used.public void setCatalinaBase(File catalinaBase)
Server
setCatalinaBase
in interface Server
catalinaBase
- the configured base directorypublic File getCatalinaHome()
getCatalinaHome
in interface Server
public void setCatalinaHome(File catalinaHome)
Server
setCatalinaHome
in interface Server
catalinaHome
- the configured home directorypublic void addPropertyChangeListener(PropertyChangeListener listener)
listener
- The listener to addpublic void removePropertyChangeListener(PropertyChangeListener listener)
listener
- The listener to removepublic String toString()
public void storeConfig() throws InstanceNotFoundException, MBeanException
Server
out to the server.xml configuration file.InstanceNotFoundException
- if the managed resource object cannot be foundMBeanException
- if the initializer of the object throws an exception, or
persistence is not supportedRuntimeOperationsException
- if an exception is reported by the persistence mechanismpublic void storeContext(Context context) throws InstanceNotFoundException, MBeanException
Context
out to the specified configuration file.context
- the context which should save its configurationInstanceNotFoundException
- if the managed resource object cannot be foundMBeanException
- if the initializer of the object throws an exception
or persistence is not supportedRuntimeOperationsException
- if an exception is reported by the persistence mechanismprotected void startInternal() throws LifecycleException
Service
s) and implement the requirements
of LifecycleBase.startInternal()
.startInternal
in class LifecycleBase
LifecycleException
- if this component detects a fatal error
that prevents this component from being usedprotected void startPeriodicLifecycleEvent()
protected void stopInternal() throws LifecycleException
Service
s) and implement the requirements
of LifecycleBase.stopInternal()
.stopInternal
in class LifecycleBase
LifecycleException
- if this component detects a fatal error
that needs to be reportedprotected void initInternal() throws LifecycleException
initInternal
in class LifecycleMBeanBase
LifecycleException
- If the initialisation failsprotected void destroyInternal() throws LifecycleException
LifecycleMBeanBase
destroyInternal
in class LifecycleMBeanBase
LifecycleException
- If the destruction failspublic ClassLoader getParentClassLoader()
getParentClassLoader
in interface Server
Server.getCatalina()
Catalina.getParentClassLoader()
. If
catalina has not been set, return the system class loader.public void setParentClassLoader(ClassLoader parent)
setParentClassLoader
in interface Server
parent
- The new parent class loaderprotected String getDomainInternal()
getDomainInternal
in class LifecycleMBeanBase
protected final String getObjectNameKeyProperties()
LifecycleMBeanBase
ObjectName
that will be used to register this component.getObjectNameKeyProperties
in class LifecycleMBeanBase
ObjectName
public ScheduledExecutorService getUtilityExecutor()
getUtilityExecutor
in interface Server
Copyright © 2000-2020 Apache Software Foundation. All Rights Reserved.