Class LocalConnector

  • All Implemented Interfaces:
    Connector, Container, Destroyable, Dumpable, Graceful, LifeCycle

    public class LocalConnector
    extends AbstractConnector
    A local connector, mostly for testing purposes.
      HttpTester.Request request = HttpTester.newRequest();
      request.setURI("/some/resource");
      HttpTester.Response response =
          HttpTester.parseResponse(HttpTester.from(localConnector.getResponse(request.generate())));
     
    • Method Detail

      • getTransport

        public java.lang.Object getTransport()
        Returns:
        the underlying socket, channel, buffer etc. for the connector.
      • getResponses

        @Deprecated
        public java.lang.String getResponses​(java.lang.String requests)
                                      throws java.lang.Exception
        Deprecated.
        Sends requests and get responses based on thread activity. Returns all the responses received once the thread activity has returned to the level it was before the requests.

        This methods waits until the connection is closed or is idle for 5s before returning the responses.

        Use getResponse(String) for an alternative that does not wait for idle.

        Parameters:
        requests - the requests
        Returns:
        the responses
        Throws:
        java.lang.Exception - if the requests fail
      • getResponses

        @Deprecated
        public java.lang.String getResponses​(java.lang.String requests,
                                             long idleFor,
                                             java.util.concurrent.TimeUnit units)
                                      throws java.lang.Exception
        Sends requests and get responses based on thread activity. Returns all the responses received once the thread activity has returned to the level it was before the requests.

        This methods waits until the connection is closed or an idle period before returning the responses.

        Use getResponse(String) for an alternative that does not wait for idle.

        Parameters:
        requests - the requests
        idleFor - The time the response stream must be idle for before returning
        units - The units of idleFor
        Returns:
        the responses
        Throws:
        java.lang.Exception - if the requests fail
      • getResponses

        @Deprecated
        public java.nio.ByteBuffer getResponses​(java.nio.ByteBuffer requestsBuffer)
                                         throws java.lang.Exception
        Deprecated.
        Sends requests and get's responses based on thread activity. Returns all the responses received once the thread activity has returned to the level it was before the requests.

        This methods waits until the connection is closed or is idle for 5s before returning the responses.

        Use getResponse(ByteBuffer) for an alternative that does not wait for idle.

        Parameters:
        requestsBuffer - the requests
        Returns:
        the responses
        Throws:
        java.lang.Exception - if the requests fail
      • getResponses

        @Deprecated
        public java.nio.ByteBuffer getResponses​(java.nio.ByteBuffer requestsBuffer,
                                                long idleFor,
                                                java.util.concurrent.TimeUnit units)
                                         throws java.lang.Exception
        Sends requests and get's responses based on thread activity. Returns all the responses received once the thread activity has returned to the level it was before the requests.

        This methods waits until the connection is closed or an idle period before returning the responses.

        Parameters:
        requestsBuffer - the requests
        idleFor - The time the response stream must be idle for before returning
        units - The units of idleFor
        Returns:
        the responses
        Throws:
        java.lang.Exception - if the requests fail
      • executeRequest

        public LocalConnector.LocalEndPoint executeRequest​(java.lang.String rawRequest)
        Execute a request and return the EndPoint through which multiple responses can be received or more input provided.
        Parameters:
        rawRequest - the request
        Returns:
        the local endpoint
      • accept

        protected void accept​(int acceptorID)
                       throws java.io.IOException,
                              java.lang.InterruptedException
        Specified by:
        accept in class AbstractConnector
        Throws:
        java.io.IOException
        java.lang.InterruptedException
      • getResponse

        public java.nio.ByteBuffer getResponse​(java.nio.ByteBuffer requestsBuffer)
                                        throws java.lang.Exception
        Get a single response using a parser to search for the end of the message.
        Parameters:
        requestsBuffer - The request to send
        Returns:
        ByteBuffer containing response or null.
        Throws:
        java.lang.Exception - If there is a problem
      • getResponse

        public java.nio.ByteBuffer getResponse​(java.nio.ByteBuffer requestBuffer,
                                               long time,
                                               java.util.concurrent.TimeUnit unit)
                                        throws java.lang.Exception
        Get a single response using a parser to search for the end of the message.
        Parameters:
        requestBuffer - The request to send
        time - The time to wait
        unit - The units of the wait
        Returns:
        ByteBuffer containing response or null.
        Throws:
        java.lang.Exception - If there is a problem
      • getResponse

        public java.nio.ByteBuffer getResponse​(java.nio.ByteBuffer requestBuffer,
                                               boolean head,
                                               long time,
                                               java.util.concurrent.TimeUnit unit)
                                        throws java.lang.Exception
        Get a single response using a parser to search for the end of the message.
        Parameters:
        requestBuffer - The request to send
        head - True if the response is for a head request
        time - The time to wait
        unit - The units of the wait
        Returns:
        ByteBuffer containing response or null.
        Throws:
        java.lang.Exception - If there is a problem
      • getResponse

        public java.lang.String getResponse​(java.lang.String rawRequest)
                                     throws java.lang.Exception
        Get a single response using a parser to search for the end of the message.
        Parameters:
        rawRequest - The request to send
        Returns:
        ByteBuffer containing response or null.
        Throws:
        java.lang.Exception - If there is a problem
      • getResponse

        public java.lang.String getResponse​(java.lang.String rawRequest,
                                            long time,
                                            java.util.concurrent.TimeUnit unit)
                                     throws java.lang.Exception
        Get a single response using a parser to search for the end of the message.
        Parameters:
        rawRequest - The request to send
        time - The time to wait
        unit - The units of the wait
        Returns:
        ByteBuffer containing response or null.
        Throws:
        java.lang.Exception - If there is a problem
      • getResponse

        public java.lang.String getResponse​(java.lang.String rawRequest,
                                            boolean head,
                                            long time,
                                            java.util.concurrent.TimeUnit unit)
                                     throws java.lang.Exception
        Get a single response using a parser to search for the end of the message.
        Parameters:
        rawRequest - The request to send
        head - True if the response is for a head request
        time - The time to wait
        unit - The units of the wait
        Returns:
        ByteBuffer containing response or null.
        Throws:
        java.lang.Exception - If there is a problem