@ManagedObject(value="Handler wrapping another Handler") public class HandlerWrapper extends AbstractHandlerContainer
HandlerWrapper
acts as a Handler
but delegates the handle
method and
life cycle
events to a delegate. This is primarily used to implement the Decorator pattern.AbstractHandler.ErrorDispatchHandler
AbstractLifeCycle.AbstractLifeCycleListener
LifeCycle.Listener
Container.InheritedListener, Container.Listener
Constructor and Description |
---|
HandlerWrapper() |
Modifier and Type | Method and Description |
---|---|
void |
destroy()
Destroys the managed Destroyable beans in the reverse order they were added.
|
Handler |
getHandler() |
Handler[] |
getHandlers() |
void |
handle(String target,
Request baseRequest,
HttpServletRequest request,
HttpServletResponse response)
Handle a request.
|
void |
insertHandler(HandlerWrapper wrapper)
Replace the current handler with another HandlerWrapper
linked to the current handler.
|
void |
setHandler(Handler handler) |
findContainerOf, getChildHandlerByClass, getChildHandlers, getChildHandlersByClass, setServer
getServer
addBean, addBean, addEventListener, addManaged, contains, dump, dump, dump, dump, dump, dumpObject, dumpStdErr, getBean, getBeans, getBeans, getContainedBeans, isAuto, isManaged, isUnmanaged, manage, removeBean, removeBeans, removeEventListener, setBeans, setStopTimeout, unmanage, updateBean, updateBean, updateBeans
addLifeCycleListener, getState, getState, getStopTimeout, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, stop, toString
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
addLifeCycleListener, isFailed, isRunning, isStarted, isStarting, isStopped, isStopping, removeLifeCycleListener, start, start, stop, stop
dumpContainer, dumpIterable, dumpMapEntries, dumpObjects, dumpSelf, named
@ManagedAttribute(value="Wrapped Handler", readonly=true) public Handler getHandler()
public Handler[] getHandlers()
public void setHandler(Handler handler)
handler
- Set the Handler
which should be wrapped.public void insertHandler(HandlerWrapper wrapper)
This is equivalent to:
wrapper.setHandler(getHandler()); setHandler(wrapper);
wrapper
- the wrapper to insertpublic void handle(String target, Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
Handler
handle
in interface Handler
handle
in class AbstractHandler
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
HttpConnection.getCurrentConnection()
.getHttpChannel()
.getRequest()
method can be used access the Request object if required.response
- The response as the Response
object or a wrapper of that request. The
HttpConnection.getCurrentConnection()
.getHttpChannel()
.getResponse()
method can be used access the Response object if required.IOException
- if unable to handle the request or response processingServletException
- if unable to handle the request or response due to underlying servlet issuepublic void destroy()
ContainerLifeCycle
destroy
in interface Handler
destroy
in interface Destroyable
destroy
in class AbstractHandler
Copyright © 2010 - 2020 Adobe. All Rights Reserved