Class Polling

  • All Implemented Interfaces:
    jakarta.servlet.AsyncListener, java.util.EventListener

    public final class Polling
    extends Transport
    implements jakarta.servlet.AsyncListener
    Polling transport.
    • Constructor Summary

      Constructors 
      Constructor Description
      Polling​(java.lang.Object lockObject, Parser parser)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void doClose()
      Transport specific logic for closing transport.
      java.util.Map<java.lang.String,​java.util.List<java.lang.String>> getInitialHeaders()
      Get the headers of the initial HTTP request.
      java.util.Map<java.lang.String,​java.lang.String> getInitialQuery()
      Get the query parameters of the initial HTTP request.
      java.lang.String getName()
      Get the name of this transport.
      boolean isWritable()
      Checks whether the transport is currently writable.
      protected void onClose()
      Called by child to indicate closure of transport.
      void onComplete​(jakarta.servlet.AsyncEvent asyncEvent)  
      protected void onData​(java.lang.Object data)
      Called by child to indicate data received from remote client.
      private void onDataRequest​(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response)  
      void onError​(jakarta.servlet.AsyncEvent asyncEvent)  
      private void onPollRequest​(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response)  
      void onRequest​(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response)
      Handle a client HTTP request.
      void onStartAsync​(jakarta.servlet.AsyncEvent asyncEvent)  
      void onTimeout​(jakarta.servlet.AsyncEvent asyncEvent)  
      void send​(java.util.List<Packet<?>> packets)
      Send a list of packets over the transport.
      private java.lang.String serializeByteArray​(byte[] input)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • PACKET_CLOSE

        private static final java.util.List<Packet<?>> PACKET_CLOSE
      • PACKET_NOOP

        private static final java.util.List<Packet<?>> PACKET_NOOP
      • mLockObject

        private final java.lang.Object mLockObject
      • mPollRequest

        private jakarta.servlet.http.HttpServletRequest mPollRequest
      • mPollResponse

        private jakarta.servlet.http.HttpServletResponse mPollResponse
      • mWritable

        private boolean mWritable
      • mShouldClose

        private boolean mShouldClose
      • mQuery

        private java.util.Map<java.lang.String,​java.lang.String> mQuery
      • mHeaders

        private java.util.Map<java.lang.String,​java.util.List<java.lang.String>> mHeaders
    • Constructor Detail

      • Polling

        public Polling​(java.lang.Object lockObject,
                       Parser parser)
    • Method Detail

      • getInitialQuery

        public java.util.Map<java.lang.String,​java.lang.String> getInitialQuery()
        Description copied from class: Transport
        Get the query parameters of the initial HTTP request.
        Specified by:
        getInitialQuery in class Transport
        Returns:
        Query parameters of the initial HTTP request.
      • getInitialHeaders

        public java.util.Map<java.lang.String,​java.util.List<java.lang.String>> getInitialHeaders()
        Description copied from class: Transport
        Get the headers of the initial HTTP request.
        Specified by:
        getInitialHeaders in class Transport
        Returns:
        Headers of the initial HTTP request.
      • onRequest

        public void onRequest​(jakarta.servlet.http.HttpServletRequest request,
                              jakarta.servlet.http.HttpServletResponse response)
                       throws java.io.IOException
        Description copied from class: Transport
        Handle a client HTTP request.
        Specified by:
        onRequest in class Transport
        Parameters:
        request - The HTTP request object.
        response - The HTTP response object.
        Throws:
        java.io.IOException - On IO error.
      • send

        public void send​(java.util.List<Packet<?>> packets)
        Description copied from class: Transport
        Send a list of packets over the transport.
        Specified by:
        send in class Transport
        Parameters:
        packets - List of packets to send.
      • isWritable

        public boolean isWritable()
        Description copied from class: Transport
        Checks whether the transport is currently writable.
        Specified by:
        isWritable in class Transport
        Returns:
        Boolean value indicating if transport can be written to.
      • getName

        public java.lang.String getName()
        Description copied from class: Transport
        Get the name of this transport.
        Specified by:
        getName in class Transport
        Returns:
        Name of transport.
      • doClose

        protected void doClose()
        Description copied from class: Transport
        Transport specific logic for closing transport.
        Specified by:
        doClose in class Transport
      • onData

        protected void onData​(java.lang.Object data)
        Description copied from class: Transport
        Called by child to indicate data received from remote client.
        Overrides:
        onData in class Transport
        Parameters:
        data - Encoded data received by transport.
      • onClose

        protected void onClose()
        Description copied from class: Transport
        Called by child to indicate closure of transport.
        Overrides:
        onClose in class Transport
      • onStartAsync

        public void onStartAsync​(jakarta.servlet.AsyncEvent asyncEvent)
        Specified by:
        onStartAsync in interface jakarta.servlet.AsyncListener
      • onComplete

        public void onComplete​(jakarta.servlet.AsyncEvent asyncEvent)
        Specified by:
        onComplete in interface jakarta.servlet.AsyncListener
      • onTimeout

        public void onTimeout​(jakarta.servlet.AsyncEvent asyncEvent)
        Specified by:
        onTimeout in interface jakarta.servlet.AsyncListener
      • onError

        public void onError​(jakarta.servlet.AsyncEvent asyncEvent)
        Specified by:
        onError in interface jakarta.servlet.AsyncListener
      • onPollRequest

        private void onPollRequest​(jakarta.servlet.http.HttpServletRequest request,
                                   jakarta.servlet.http.HttpServletResponse response)
      • onDataRequest

        private void onDataRequest​(jakarta.servlet.http.HttpServletRequest request,
                                   jakarta.servlet.http.HttpServletResponse response)
                            throws java.io.IOException
        Throws:
        java.io.IOException
      • serializeByteArray

        private java.lang.String serializeByteArray​(byte[] input)