Class AsyncDelayHandler

  • All Implemented Interfaces:
    Handler, HandlerContainer, org.eclipse.jetty.util.component.Container, org.eclipse.jetty.util.component.Destroyable, org.eclipse.jetty.util.component.Dumpable, org.eclipse.jetty.util.component.LifeCycle

    public class AsyncDelayHandler
    extends HandlerWrapper
    A handler wrapper that provides the framework to asynchronously delay the handling of a request. While it uses standard servlet API for asynchronous servlets, it adjusts the dispatch type of the request so that it does not appear to be asynchronous during the delayed dispatch.
    • Nested Class Summary

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

        org.eclipse.jetty.util.component.AbstractLifeCycle.AbstractLifeCycleListener
      • Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.Container

        org.eclipse.jetty.util.component.Container.InheritedListener, org.eclipse.jetty.util.component.Container.Listener
      • Nested classes/interfaces inherited from interface org.eclipse.jetty.util.component.LifeCycle

        org.eclipse.jetty.util.component.LifeCycle.Listener
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static String AHW_ATTR  
      • Fields inherited from class org.eclipse.jetty.util.component.AbstractLifeCycle

        FAILED, RUNNING, STARTED, STARTING, STOPPED, STOPPING
      • Fields inherited from interface org.eclipse.jetty.util.component.Dumpable

        KEY
    • Constructor Detail

      • AsyncDelayHandler

        public AsyncDelayHandler()
    • Method Detail

      • startHandling

        protected boolean startHandling​(Request request,
                                        boolean restart)
        Called to indicate that a request has been presented for handling
        Parameters:
        request - The request to handle
        restart - True if this request is being restarted after a delay
        Returns:
        True if the request should be handled now
      • delayHandling

        protected void delayHandling​(Request request,
                                     AsyncContext context)
        Called to indicate that a requests handling is being delayed/ The implementation should arrange for context.dispatch() to be called when the request should be handled. It may also set timeouts on the context.
        Parameters:
        request - The request to be delayed
        context - The AsyncContext of the delayed request
      • endHandling

        protected void endHandling​(Request request)
        Called to indicated the handling of the request is ending. This is only the end of the current dispatch of the request and if the request is asynchronous, it may be handled again.
        Parameters:
        request - The request