org.eclipse.jetty.server.handler

## Class HandlerCollection

- 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

- All Implemented Interfaces:
    Handler, HandlerContainer, Destroyable, Dumpable, LifeCycle
  Direct Known Subclasses:
    ContextHandlerCollection, HandlerList

      public class HandlerCollection
      extends AbstractHandlerContainer

  A collection of handlers.

  The default implementations calls all handlers in list order, regardless of the response status or exceptions. Derived implementation may alter the order or the conditions of calling the contained handlers.

  Apache XBean:

- - ### 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
    `HandlerCollection()`
    `HandlerCollection(boolean mutableWhenRunning)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addHandler(Handler handler)`
    `void` | `destroy()` Destroy the joined Destroyable beans in the reverse order they were added.
    `protected void` | `doStart()` Start the managed lifecycle beans in the order they were added.
    `protected void` | `doStop()` Stop the joined lifecycle beans in the reverse order they were added.
    `protected java.lang.Object` | `expandChildren(java.lang.Object list, java.lang.Class byClass)`
    `Handler[]` | `getHandlers()`
    `void` | `handle(java.lang.String target, Request baseRequest, javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)` Handle a request.
    `boolean` | `isParallelStart()` Get the parrallelStart.
    `void` | `removeHandler(Handler handler)`
    `void` | `setHandlers(Handler[] handlers)`
    `void` | `setParallelStart(boolean parallelStart)` Set the parallelStart.
    `void` | `setServer(Server server)`

    - ### 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

    - #### HandlerCollection

          public HandlerCollection()

    - #### HandlerCollection

          public HandlerCollection(boolean mutableWhenRunning)

  - ### Method Detail

    - #### getHandlers

          public Handler[] getHandlers()

      Returns:
        Returns the handlers.

    - #### setHandlers

          public void setHandlers(Handler[] handlers)

      Parameters:
        `handlers` - The handlers to set.

    - #### isParallelStart

          public boolean isParallelStart()

      Get the parrallelStart.
      Returns:
        true if the contained handlers are started in parallel.

    - #### setParallelStart

          public void setParallelStart(boolean parallelStart)

      Set the parallelStart.
      Parameters:
        `parallelStart` - If true, contained handlers are started in parallel.

    - #### handle

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

      Description copied from interface: `Handler`
      Handle a request.
      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:
        `java.io.IOException`
        `javax.servlet.ServletException`
      See Also:
        `Handler.handle(String, Request, HttpServletRequest, HttpServletResponse)`

    - #### doStart

          protected void doStart()
                          throws java.lang.Exception

      Description copied from class: `AggregateLifeCycle`
      Start the managed lifecycle beans in the order they were added.
      Overrides:
        `doStart` in class `AbstractHandler`
      Throws:
        `java.lang.Exception`
      See Also:
        `AbstractLifeCycle.doStart()`

    - #### doStop

          protected void doStop()
                         throws java.lang.Exception

      Description copied from class: `AggregateLifeCycle`
      Stop the joined lifecycle beans in the reverse order they were added.
      Overrides:
        `doStop` in class `AbstractHandler`
      Throws:
        `java.lang.Exception`
      See Also:
        `AbstractLifeCycle.doStart()`

    - #### setServer

          public void setServer(Server server)

      Specified by:
        `setServer` in interface `Handler`
      Overrides:
        `setServer` in class `AbstractHandler`

    - #### addHandler

          public void addHandler(Handler handler)

    - #### removeHandler

          public void removeHandler(Handler handler)

    - #### expandChildren

          protected java.lang.Object expandChildren(java.lang.Object list,
                                        java.lang.Class byClass)

      Overrides:
        `expandChildren` in class `AbstractHandlerContainer`

    - #### destroy

          public void destroy()

      Description copied from class: `AggregateLifeCycle`
      Destroy the joined Destroyable beans in the reverse order they were added.
      Specified by:
        `destroy` in interface `Handler`
      Specified by:
        `destroy` in interface `Destroyable`
      Overrides:
        `destroy` in class `AbstractHandler`
      See Also:
        `Destroyable.destroy()`

Copyright © 2013 FuseSource, Corp.. All Rights Reserved.