org.eclipse.jetty.server.handler

## Class ContextHandlerCollection

- java.lang.Object
- - org.eclipse.jetty.util.component.AbstractLifeCycle
  - - org.eclipse.jetty.util.component.AggregateLifeCycle
    - - org.eclipse.jetty.server.handler.AbstractHandler
      - - org.eclipse.jetty.server.handler.AbstractHandlerContainer
        - - org.eclipse.jetty.server.handler.HandlerCollection
          - - org.eclipse.jetty.server.handler.ContextHandlerCollection

All Implemented Interfaces:
  Handler, HandlerContainer, Destroyable, Dumpable, LifeCycle

    public class ContextHandlerCollection
    extends HandlerCollection

ContextHandlerCollection. This `HandlerCollection` is creates a `PathMap` to it's contained handlers based on the context path and virtual hosts of any contained `ContextHandler`s. The contexts do not need to be directly contained, only children of the contained handlers. Multiple contexts may have the same context path and they are called in order until one handles the request.

Apache XBean:
  element="contexts"

### Nested Class Summary

### Nested classes/interfaces inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

`AbstractLifeCycle.AbstractLifeCycleListener`

### Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle

`LifeCycle.Listener`

### Field Summary

### Fields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

`_listeners, FAILED, RUNNING, STARTED, STARTING, STOPPED, STOPPING`

### Constructor Summary

Constructors
Constructor and Description
`ContextHandlerCollection()`

### Method Summary

Methods
`ContextHandler` `addContext(String contextPath, String resourceBase)` Add a context handler.
`protected void` `doStart()` Start the managed lifecycle beans in the order they were added.
`Class` `getContextClass()`
`void` `handle(String target, Request baseRequest, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)` Handle a request.
`void` `mapContexts()` Remap the context paths.
`void` `setContextClass(Class contextClass)`
`void` `setHandlers(Handler[] handlers)`

### Methods inherited from class org.eclipse.jetty.server.handler.HandlerCollection

`addHandler, destroy, doStop, expandChildren, getHandlers, isParallelStart, removeHandler, setParallelStart, setServer`

### Methods inherited from class org.eclipse.jetty.server.handler.AbstractHandlerContainer

`dump, expandHandler, findContainerOf, getChildHandlerByClass, getChildHandlers, getChildHandlersByClass`

### Methods inherited from class org.eclipse.jetty.server.handler.AbstractHandler

`dumpThis, getServer`

### Methods inherited from class org.eclipse.jetty.util.component.AggregateLifeCycle

`addBean, addBean, contains, dump, dump, dump, dump, dumpObject, dumpStdErr, getBean, getBeans, getBeans, isManaged, manage, removeBean, removeBeans, unmanage`

### Methods inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

`addLifeCycleListener, getState, getState, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.eclipse.jetty.util.component.LifeCycle

`addLifeCycleListener, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop`

### Constructor Detail

#### ContextHandlerCollection

    public ContextHandlerCollection()

### Method Detail

#### mapContexts

    public void mapContexts()

Remap the context paths.

#### setHandlers

    public void setHandlers(Handler[] handlers)

Overrides:
  `setHandlers` in class `HandlerCollection`
Parameters:
  `handlers` - The handlers to set.

#### doStart

    protected void doStart()
                    throws Exception

Description copied from class: `AggregateLifeCycle`
Start the managed lifecycle beans in the order they were added.

Overrides:
  `doStart` in class `HandlerCollection`
Throws:
  `Exception`
See Also:
  `AbstractLifeCycle.doStart()`

#### handle

    public void handle(String target,
              Request baseRequest,
              javax.servlet.http.HttpServletRequest request,
              javax.servlet.http.HttpServletResponse response)
                throws IOException,
                       javax.servlet.ServletException

Description copied from interface: `Handler`
Handle a request.

Specified by:
  `handle` in interface `Handler`
Overrides:
  `handle` in class `HandlerCollection`
Parameters:
  `target` - The target of the request - either a URI or a name.
  `baseRequest` - The original unwrapped request object.
  `request` - The request either as the `Request` object or a wrapper of that request. The `AbstractHttpConnection.getCurrentConnection()` method can be used access the Request object if required.
  `response` - The response as the `Response` object or a wrapper of that request. The `AbstractHttpConnection.getCurrentConnection()` method can be used access the Response object if required.
Throws:
  `IOException`
  `javax.servlet.ServletException`
See Also:
  `Handler.handle(String, Request, HttpServletRequest, HttpServletResponse)`

#### addContext

    public ContextHandler addContext(String contextPath,
                            String resourceBase)

Add a context handler.

Parameters:
  `contextPath` - The context path to add
Returns:
  the ContextHandler just added

#### getContextClass

    public Class getContextClass()

Returns:
  The class to use to add new Contexts

#### setContextClass

    public void setContextClass(Class contextClass)

Parameters:
  `contextClass` - The class to use to add new Contexts