## org.apache.catalina
Interface Engine

All Superinterfaces:
  Container

All Known Implementing Classes:
  StandardEngine

public interface Engine
extends Container

An Engine is a Container that represents the entire Catalina servlet engine. It is useful in the following types of scenarios:

- You wish to use Interceptors that see every single request processed by the entire engine.
- You wish to run Catalina in with a standalone HTTP connector, but still want support for multiple virtual hosts.

In general, you would not use an Engine when deploying Catalina connected to a web server (such as Apache), because the Connector will have utilized the web server's facilities to determine which Context (or perhaps even which Wrapper) should be utilized to process this request.

The child containers attached to an Engine are generally implementations of Host (representing a virtual host) or Context (representing individual an individual servlet context), depending upon the Engine implementation.

If used, an Engine is always the top level Container in a Catalina hierarchy. Therefore, the implementation's `setParent()` method should throw `IllegalArgumentException`.

Version:
  $Revision: 1.10 $ $Date: 2004/08/26 22:05:20 $
Author:
  Craig R. McClanahan

Field Summary

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`

Method Summary
`void` `addDefaultContext(DefaultContext defaultContext)` Set the DefaultContext for new web applications.
`DefaultContext` `getDefaultContext()` Retrieve the DefaultContext for new web applications.
`java.lang.String` `getDefaultHost()` Return the default hostname for this Engine.
`java.lang.String` `getJvmRoute()` Retrieve the JvmRouteId for this engine.
`Service` `getService()` Return the `Service` with which we are associated (if any).
`void` `importDefaultContext(Context context)` Import the DefaultContext config into a web application context.
`void` `setDefaultHost(java.lang.String defaultHost)` Set the default hostname for this Engine.
`void` `setJvmRoute(java.lang.String jvmRouteId)` Set the JvmRouteId for this engine.
`void` `setService(Service service)` Set the `Service` with which we are associated (if any).

Methods inherited from interface org.apache.catalina.Container

`addChild, addContainerListener, addMapper, addPropertyChangeListener, findChild, findChildren, findContainerListeners, findMapper, findMappers, getCluster, getInfo, getLoader, getLogger, getManager, getName, getParent, getParentClassLoader, getRealm, getResources, invoke, map, removeChild, removeContainerListener, removeMapper, removePropertyChangeListener, setCluster, setLoader, setLogger, setManager, setName, setParent, setParentClassLoader, setRealm, setResources`

Method Detail

### getDefaultHost

    public java.lang.String getDefaultHost()

  Return the default hostname for this Engine.

### setDefaultHost

    public void setDefaultHost(java.lang.String defaultHost)

  Set the default hostname for this Engine.

  Parameters:
    `defaultHost` - The new default host

### getJvmRoute

    public java.lang.String getJvmRoute()

  Retrieve the JvmRouteId for this engine.

### setJvmRoute

    public void setJvmRoute(java.lang.String jvmRouteId)

  Set the JvmRouteId for this engine.

  Parameters:
    `jvmRouteId` - the (new) JVM Route ID. Each Engine within a cluster must have a unique JVM Route ID.

### getService

    public Service getService()

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

### setService

    public void setService(Service service)

  Set the `Service` with which we are associated (if any).

  Parameters:
    `service` - The service that owns this Engine

### addDefaultContext

    public void addDefaultContext(DefaultContext defaultContext)

  Set the DefaultContext for new web applications.

  Parameters:
    `defaultContext` - The new DefaultContext

### getDefaultContext

    public DefaultContext getDefaultContext()

  Retrieve the DefaultContext for new web applications.

### importDefaultContext

    public void importDefaultContext(Context context)

  Import the DefaultContext config into a web application context.

  Parameters:
    `context` - web application context to import default context

Copyright ? 2000-2002 Apache Software Foundation. All Rights Reserved.