org.apache.catalina.core
Class StandardEngine

java.lang.Object
  extended byorg.apache.catalina.core.ContainerBase
      extended byorg.apache.catalina.core.StandardEngine
All Implemented Interfaces:
Container, Engine, Lifecycle, javax.management.MBeanRegistration, Pipeline, java.io.Serializable

public class StandardEngine
extends ContainerBase
implements Engine

Standard implementation of the Engine interface. Each child container must be a Host implementation to process the specific fully qualified host name of that virtual host.
You can set the jvmRoute direct or with the System.property jvmRoute.

Version:
$Id: StandardEngine.java 939525 2010-04-30 00:36:35Z kkolinko $
Author:
Craig R. McClanahan
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class org.apache.catalina.core.ContainerBase
ContainerBase.ContainerBackgroundProcessor, ContainerBase.PrivilegedAddChild
 
Field Summary
 
Fields inherited from class org.apache.catalina.core.ContainerBase
backgroundProcessorDelay, children, cluster, controller, domain, lifecycle, listeners, loader, logger, logName, manager, mserver, name, oname, parent, parentClassLoader, pipeline, realm, resources, sm, started, suffix, support, type
 
Fields inherited from interface org.apache.catalina.Container
ADD_CHILD_EVENT, ADD_MAPPER_EVENT, ADD_VALVE_EVENT, REMOVE_CHILD_EVENT, REMOVE_MAPPER_EVENT, REMOVE_VALVE_EVENT
 
Fields inherited from interface org.apache.catalina.Lifecycle
AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, DESTROY_EVENT, INIT_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT
 
Constructor Summary
StandardEngine()
          Create a new StandardEngine component with the default basic Valve.
 
Method Summary
 void addChild(Container child)
          Add a child Container, only if the proposed child is an implementation of Host.
 javax.management.ObjectName createObjectName(java.lang.String domain, javax.management.ObjectName parent)
           
 void destroy()
           
 java.lang.String getBaseDir()
           
 java.lang.String getDefaultHost()
          Return the default host.
 java.lang.String getDomain()
           
 java.lang.String getInfo()
          Return descriptive information about this Container implementation and the corresponding version number, in the format <description>/<version>.
 java.lang.String getJvmRoute()
          Retrieve the cluster-wide unique identifier for this Engine.
 java.lang.String getMbeansFile()
           
 javax.management.ObjectName getParentName()
           
 Realm getRealm()
          Provide a default in case no explicit configuration is set
 Service getService()
          Return the Service with which we are associated (if any).
 void init()
          Init method, part of the MBean lifecycle.
 javax.management.ObjectName preRegister(javax.management.MBeanServer server, javax.management.ObjectName name)
           
 void setBaseDir(java.lang.String baseDir)
           
 void setDefaultHost(java.lang.String host)
          Set the default host.
 void setDomain(java.lang.String domain)
           
 void setJvmRoute(java.lang.String routeId)
          Set the cluster-wide unique identifier for this Engine.
 void setMbeansFile(java.lang.String mbeansFile)
           
 void setName(java.lang.String name)
          Set a name string (suitable for use by humans) that describes this Container.
 void setParent(Container container)
          Disallow any attempt to set a parent for this Container, since an Engine is supposed to be at the top of the Container hierarchy.
 void setService(Service service)
          Set the Service with which we are associated (if any).
 void start()
          Start this Engine component.
 void stop()
          Gracefully shut down active use of the public methods of this Component.
 java.lang.String toString()
          Return a String representation of this component.
 
Methods inherited from class org.apache.catalina.core.ContainerBase
addContainerListener, addLifecycleListener, addPropertyChangeListener, addValve, backgroundProcess, findChild, findChildren, findContainerListeners, findLifecycleListeners, fireContainerEvent, getBackgroundProcessorDelay, getBasic, getChildren, getCluster, getContainerSuffix, getFirst, getJmxName, getJSR77Suffix, getLoader, getLogger, getManager, getMappingObject, getName, getObjectName, getParent, getParentClassLoader, getPipeline, getResources, getType, getValveObjectNames, getValves, invoke, logName, postDeregister, postRegister, preDeregister, removeChild, removeContainerListener, removeLifecycleListener, removePropertyChangeListener, removeValve, setBackgroundProcessorDelay, setBasic, setCluster, setLoader, setManager, setParentClassLoader, setRealm, setResources, threadStart, threadStop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.catalina.Container
addContainerListener, addPropertyChangeListener, backgroundProcess, findChild, findChildren, findContainerListeners, getBackgroundProcessorDelay, getCluster, getLoader, getLogger, getManager, getMappingObject, getName, getObjectName, getParent, getParentClassLoader, getPipeline, getResources, invoke, removeChild, removeContainerListener, removePropertyChangeListener, setBackgroundProcessorDelay, setCluster, setLoader, setManager, setParentClassLoader, setRealm, setResources
 

Constructor Detail

StandardEngine

public StandardEngine()
Create a new StandardEngine component with the default basic Valve.

Method Detail

getRealm

public Realm getRealm()
Provide a default in case no explicit configuration is set

Specified by:
getRealm in interface Container
Overrides:
getRealm in class ContainerBase
Returns:
configured realm, or a JAAS realm by default

getDefaultHost

public java.lang.String getDefaultHost()
Return the default host.

Specified by:
getDefaultHost in interface Engine

setDefaultHost

public void setDefaultHost(java.lang.String host)
Set the default host.

Specified by:
setDefaultHost in interface Engine
Parameters:
host - The new default host

setName

public void setName(java.lang.String name)
Description copied from interface: Container
Set a name string (suitable for use by humans) that describes this Container. Within the set of child containers belonging to a particular parent, Container names must be unique.

Specified by:
setName in interface Container
Overrides:
setName in class ContainerBase
Parameters:
name - New name of this container

setJvmRoute

public void setJvmRoute(java.lang.String routeId)
Set the cluster-wide unique identifier for this Engine. This value is only useful in a load-balancing scenario.

This property should not be changed once it is set.

Specified by:
setJvmRoute in interface Engine
Parameters:
routeId - the (new) JVM Route ID. Each Engine within a cluster must have a unique JVM Route ID.

getJvmRoute

public java.lang.String getJvmRoute()
Retrieve the cluster-wide unique identifier for this Engine. This value is only useful in a load-balancing scenario.

Specified by:
getJvmRoute in interface Engine

getService

public Service getService()
Return the Service with which we are associated (if any).

Specified by:
getService in interface Engine

setService

public void setService(Service service)
Set the Service with which we are associated (if any).

Specified by:
setService in interface Engine
Parameters:
service - The service that owns this Engine

getMbeansFile

public java.lang.String getMbeansFile()

setMbeansFile

public void setMbeansFile(java.lang.String mbeansFile)

getBaseDir

public java.lang.String getBaseDir()

setBaseDir

public void setBaseDir(java.lang.String baseDir)

addChild

public void addChild(Container child)
Add a child Container, only if the proposed child is an implementation of Host.

Specified by:
addChild in interface Container
Overrides:
addChild in class ContainerBase
Parameters:
child - Child container to be added

getInfo

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

Specified by:
getInfo in interface Container
Overrides:
getInfo in class ContainerBase

setParent

public void setParent(Container container)
Disallow any attempt to set a parent for this Container, since an Engine is supposed to be at the top of the Container hierarchy.

Specified by:
setParent in interface Container
Overrides:
setParent in class ContainerBase
Parameters:
container - Proposed parent Container

init

public void init()
Description copied from class: ContainerBase
Init method, part of the MBean lifecycle. If the container was added via JMX, it'll register itself with the parent, using the ObjectName conventions to locate the parent. If the container was added directly and it doesn't have an ObjectName, it'll create a name and register itself with the JMX console. On destroy(), the object will unregister.

Overrides:
init in class ContainerBase

destroy

public void destroy()
             throws LifecycleException
Overrides:
destroy in class ContainerBase
Throws:
LifecycleException

start

public void start()
           throws LifecycleException
Start this Engine component.

Specified by:
start in interface Lifecycle
Overrides:
start in class ContainerBase
Throws:
LifecycleException - if a startup error occurs

stop

public void stop()
          throws LifecycleException
Description copied from class: ContainerBase
Gracefully shut down active use of the public methods of this Component.

Specified by:
stop in interface Lifecycle
Overrides:
stop in class ContainerBase
Throws:
LifecycleException - if this component detects a fatal error that needs to be reported

toString

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


preRegister

public javax.management.ObjectName preRegister(javax.management.MBeanServer server,
                                               javax.management.ObjectName name)
                                        throws java.lang.Exception
Specified by:
preRegister in interface javax.management.MBeanRegistration
Overrides:
preRegister in class ContainerBase
Throws:
java.lang.Exception

getParentName

public javax.management.ObjectName getParentName()
                                          throws javax.management.MalformedObjectNameException
Overrides:
getParentName in class ContainerBase
Throws:
javax.management.MalformedObjectNameException

createObjectName

public javax.management.ObjectName createObjectName(java.lang.String domain,
                                                    javax.management.ObjectName parent)
                                             throws java.lang.Exception
Overrides:
createObjectName in class ContainerBase
Throws:
java.lang.Exception

getDomain

public java.lang.String getDomain()
Overrides:
getDomain in class ContainerBase

setDomain

public void setDomain(java.lang.String domain)
Overrides:
setDomain in class ContainerBase


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