@Override
    public void dispatch() {
        log.debug("Dispatching request");

        if (dispatched.get()) {
            throw new IllegalStateException("Dispatching already started");
        }
        if (dispatchStarted.getAndSet(true)) {
            dispatched.set(true);
            notifyListeners(NotificationType.START_ASYNC, null);
        }
    }
@Test
    void dispatch_amendsPath() throws InvalidRequestEventException {
        AwsProxyHttpServletRequest req = (AwsProxyHttpServletRequest)reader.readRequest(new AwsProxyRequestBuilder("/srv1/hello", "GET").build(), null, lambdaCtx, LambdaContainerHandler.getContainerConfig());
        req.setResponse(handler.getContainerResponse(req, new CountDownLatch(1)));
        req.setServletContext(ctx);
        req.setContainerHandler(handler);

        AsyncContext asyncCtx = req.startAsync();
        asyncCtx.dispatch("/srv4/hello");
        assertEquals("/srv1/hello", req.getRequestURI());
    }