public interface Server extends Lifecycle
Server
element represents the entire Catalina
servlet container. Its attributes represent the characteristics of
the servlet container as a whole. A Server
may contain
one or more Services
, and the top level set of naming
resources.
Normally, an implementation of this interface will also implement
Lifecycle
, such that when the start()
and
stop()
methods are called, all of the defined
Services
are also started or stopped.
In between, the implementation must open a server socket on the port number
specified by the port
property. When a connection is accepted,
the first line is read and compared with the specified shutdown command.
If the command matches, shutdown of the server is initiated.
NOTE - The concrete implementation of this class should
register the (singleton) instance with the ServerFactory
class in its constructor(s).
Lifecycle.SingleUse
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
Modifier and Type | Method and Description |
---|---|
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.
|
Service |
findService(String name)
Find the specified Service
|
Service[] |
findServices() |
String |
getAddress() |
Catalina |
getCatalina() |
File |
getCatalinaBase() |
File |
getCatalinaHome() |
Context |
getGlobalNamingContext() |
NamingResourcesImpl |
getGlobalNamingResources() |
Object |
getNamingToken() |
ClassLoader |
getParentClassLoader() |
int |
getPort() |
String |
getShutdown() |
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 |
setGlobalNamingResources(NamingResourcesImpl globalNamingResources)
Set the global naming resources.
|
void |
setParentClassLoader(ClassLoader parent)
Set the parent class loader for this server.
|
void |
setPort(int port)
Set the port number we listen to for shutdown commands.
|
void |
setShutdown(String shutdown)
Set the shutdown command we are waiting for.
|
addLifecycleListener, destroy, findLifecycleListeners, getState, getStateName, init, removeLifecycleListener, start, stop
NamingResourcesImpl getGlobalNamingResources()
void setGlobalNamingResources(NamingResourcesImpl globalNamingResources)
globalNamingResources
- The new global naming resourcesContext getGlobalNamingContext()
int getPort()
void setPort(int port)
port
- The new port numberString getAddress()
void setAddress(String address)
address
- The new addressString getShutdown()
void setShutdown(String shutdown)
shutdown
- The new shutdown commandClassLoader getParentClassLoader()
getCatalina()
Catalina.getParentClassLoader()
. If
catalina has not been set, return the system class loader.void setParentClassLoader(ClassLoader parent)
parent
- The new parent class loaderCatalina getCatalina()
void setCatalina(Catalina catalina)
catalina
- the outer Catalina componentFile getCatalinaBase()
getCatalinaHome()
will be used.void setCatalinaBase(File catalinaBase)
catalinaBase
- the configured base directoryFile getCatalinaHome()
void setCatalinaHome(File catalinaHome)
catalinaHome
- the configured home directoryvoid addService(Service service)
service
- The Service to be addedvoid await()
Service findService(String name)
name
- Name of the Service to be returnednull
if none exists.Service[] findServices()
void removeService(Service service)
service
- The Service to be removedObject getNamingToken()
Copyright © 2000-2016 Apache Software Foundation. All Rights Reserved.