Apache Tomcat 7.0.28

org.apache.catalina.core
Class StandardService

java.lang.Object
  extended by org.apache.catalina.util.LifecycleBase
      extended by org.apache.catalina.util.LifecycleMBeanBase
          extended by org.apache.catalina.core.StandardService
All Implemented Interfaces:
MBeanRegistration, Lifecycle, Service
Direct Known Subclasses:
Embedded

public class StandardService
extends LifecycleMBeanBase
implements Service

Standard implementation of the Service interface. The associated Container is generally an instance of Engine, but this is not required.

Author:
Craig R. McClanahan

Field Summary
protected  Connector[] connectors
          The set of Connectors associated with this Service.
protected  Container container
          The Container associated with this Service.
protected  ArrayList<Executor> executors
           
protected  PropertyChangeSupport support
          The property change support for this component.
 
Fields inherited from class org.apache.catalina.util.LifecycleMBeanBase
mserver
 
Fields inherited from interface org.apache.catalina.Lifecycle
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 Summary
StandardService()
           
 
Method Summary
 void addConnector(Connector connector)
          Add a new Connector to the set of defined Connectors, and associate it with this Service's Container.
 void addExecutor(Executor ex)
          Adds a named executor to the service
 void addPropertyChangeListener(PropertyChangeListener listener)
          Add a property change listener to this component.
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.
 Connector[] findConnectors()
          Find and return the set of Connectors associated with this Service.
 Executor[] findExecutors()
          Retrieves all executors
 ObjectName[] getConnectorNames()
           
 Container getContainer()
          Return the Container that handles requests for all Connectors associated with this Service.
protected  String getDomainInternal()
          Method implemented by sub-classes to identify the domain in which MBeans should be registered.
 Executor getExecutor(String executorName)
          Retrieves executor by name, null if not found
 String getInfo()
          Return descriptive information about this Service implementation and the corresponding version number, in the format <description>/<version>.
 String getName()
          Return the name of this Service.
 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.
 Server getServer()
          Return the Server with which we are associated (if any).
protected  void initInternal()
          Invoke a pre-startup initialization.
 void removeConnector(Connector connector)
          Remove the specified Connector from the set associated from this Service.
 void removeExecutor(Executor ex)
          Removes an executor from the service
 void removePropertyChangeListener(PropertyChangeListener listener)
          Remove a property change listener from this component.
 void setContainer(Container container)
          Set the Container that handles requests for all Connectors associated with this Service.
 void setName(String name)
          Set the name of this Service.
 void setParentClassLoader(ClassLoader parent)
          Set the parent class loader for this server.
 void setServer(Server server)
          Set the Server with which we are associated (if any).
protected  void startInternal()
          Start nested components (Executors, Connectors and Containers) and implement the requirements of LifecycleBase.startInternal().
protected  void stopInternal()
          Stop nested components (Executors, Connectors and Containers) and implement the requirements of LifecycleBase.stopInternal().
 String toString()
          Return a String representation of this component.
 
Methods inherited from class org.apache.catalina.util.LifecycleMBeanBase
getDomain, getObjectName, postDeregister, postRegister, preDeregister, preRegister, register, setDomain, unregister
 
Methods inherited from class org.apache.catalina.util.LifecycleBase
addLifecycleListener, destroy, findLifecycleListeners, fireLifecycleEvent, getState, getStateName, init, removeLifecycleListener, setState, setState, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.catalina.Lifecycle
addLifecycleListener, destroy, findLifecycleListeners, getState, getStateName, init, removeLifecycleListener, start, stop
 

Field Detail

support

protected PropertyChangeSupport support
The property change support for this component.


connectors

protected Connector[] connectors
The set of Connectors associated with this Service.


executors

protected ArrayList<Executor> executors

container

protected Container container
The Container associated with this Service. (In the case of the org.apache.catalina.startup.Embedded subclass, this holds the most recently added Engine.)

Constructor Detail

StandardService

public StandardService()
Method Detail

getContainer

public Container getContainer()
Return the Container that handles requests for all Connectors associated with this Service.

Specified by:
getContainer in interface Service

setContainer

public void setContainer(Container container)
Set the Container that handles requests for all Connectors associated with this Service.

Specified by:
setContainer in interface Service
Parameters:
container - The new Container

getInfo

public String getInfo()
Return descriptive information about this Service implementation and the corresponding version number, in the format <description>/<version>.

Specified by:
getInfo in interface Service

getName

public String getName()
Return the name of this Service.

Specified by:
getName in interface Service

setName

public void setName(String name)
Set the name of this Service.

Specified by:
setName in interface Service
Parameters:
name - The new service name

getServer

public Server getServer()
Return the Server with which we are associated (if any).

Specified by:
getServer in interface Service

setServer

public void setServer(Server server)
Set the Server with which we are associated (if any).

Specified by:
setServer in interface Service
Parameters:
server - The server that owns this Service

addConnector

public void addConnector(Connector connector)
Add a new Connector to the set of defined Connectors, and associate it with this Service's Container.

Specified by:
addConnector in interface Service
Parameters:
connector - The Connector to be added

getConnectorNames

public ObjectName[] getConnectorNames()

addPropertyChangeListener

public void addPropertyChangeListener(PropertyChangeListener listener)
Add a property change listener to this component.

Parameters:
listener - The listener to add

findConnectors

public Connector[] findConnectors()
Find and return the set of Connectors associated with this Service.

Specified by:
findConnectors in interface Service

removeConnector

public void removeConnector(Connector connector)
Remove the specified Connector from the set associated from this Service. The removed Connector will also be disassociated from our Container.

Specified by:
removeConnector in interface Service
Parameters:
connector - The Connector to be removed

removePropertyChangeListener

public void removePropertyChangeListener(PropertyChangeListener listener)
Remove a property change listener from this component.

Parameters:
listener - The listener to remove

toString

public String toString()
Return a String representation of this component.

Overrides:
toString in class Object

addExecutor

public void addExecutor(Executor ex)
Adds a named executor to the service

Specified by:
addExecutor in interface Service
Parameters:
ex - Executor

findExecutors

public Executor[] findExecutors()
Retrieves all executors

Specified by:
findExecutors in interface Service
Returns:
Executor[]

getExecutor

public Executor getExecutor(String executorName)
Retrieves executor by name, null if not found

Specified by:
getExecutor in interface Service
Parameters:
executorName - String
Returns:
Executor

removeExecutor

public void removeExecutor(Executor ex)
Removes an executor from the service

Specified by:
removeExecutor in interface Service
Parameters:
ex - Executor

startInternal

protected void startInternal()
                      throws LifecycleException
Start nested components (Executors, Connectors and Containers) and implement the requirements of LifecycleBase.startInternal().

Specified by:
startInternal in class LifecycleBase
Throws:
LifecycleException - if this component detects a fatal error that prevents this component from being used

stopInternal

protected void stopInternal()
                     throws LifecycleException
Stop nested components (Executors, Connectors and Containers) and implement the requirements of LifecycleBase.stopInternal().

Specified by:
stopInternal in class LifecycleBase
Throws:
LifecycleException - if this component detects a fatal error that needs to be reported

initInternal

protected void initInternal()
                     throws LifecycleException
Invoke a pre-startup initialization. This is used to allow connectors to bind to restricted ports under Unix operating environments.

Overrides:
initInternal in class LifecycleMBeanBase
Throws:
LifecycleException

destroyInternal

protected void destroyInternal()
                        throws LifecycleException
Description copied from class: LifecycleMBeanBase
Sub-classes wishing to perform additional clean-up should override this method, ensuring that super.destroyInternal() is the last call in the overriding method.

Overrides:
destroyInternal in class LifecycleMBeanBase
Throws:
LifecycleException

getParentClassLoader

public ClassLoader getParentClassLoader()
Return the parent class loader for this component.

Specified by:
getParentClassLoader in interface Service

setParentClassLoader

public void setParentClassLoader(ClassLoader parent)
Set the parent class loader for this server.

Specified by:
setParentClassLoader in interface Service
Parameters:
parent - The new parent class loader

getDomainInternal

protected String getDomainInternal()
Description copied from class: LifecycleMBeanBase
Method implemented by sub-classes to identify the domain in which MBeans should be registered.

Specified by:
getDomainInternal in class LifecycleMBeanBase
Returns:
The name of the domain to use to register MBeans.

getObjectNameKeyProperties

public final String getObjectNameKeyProperties()
Description copied from class: LifecycleMBeanBase
Allow sub-classes to specify the key properties component of the ObjectName that will be used to register this component.

Specified by:
getObjectNameKeyProperties in class LifecycleMBeanBase
Returns:
The string representation of the key properties component of the desired ObjectName

Apache Tomcat 7.0.28

Copyright © 2000-2012 Apache Software Foundation. All Rights Reserved.