Refactor AsyncListener registration + polish

Instead of registering an AsyncListener in ServletHttpHandlerAdapter
we now register an AsyncListener in each of the request and response
where the events need to be handled anyway. This allows removing the
package private delegation methods in the request and response.
This commit is contained in:
Rossen Stoyanchev
2016-12-14 15:34:58 -05:00
parent 70f14c14c8
commit 5a29069798
4 changed files with 132 additions and 129 deletions

View File

@@ -18,12 +18,15 @@ package org.springframework.http.server.reactive;
import java.util.Arrays;
import java.util.Collections;
import javax.servlet.AsyncContext;
import javax.servlet.http.HttpServletRequest;
import org.junit.Test;
import org.springframework.core.io.buffer.DefaultDataBufferFactory;
import org.springframework.mock.web.test.MockAsyncContext;
import org.springframework.mock.web.test.MockHttpServletRequest;
import org.springframework.mock.web.test.MockHttpServletResponse;
import org.springframework.util.MultiValueMap;
import static org.junit.Assert.assertEquals;
@@ -72,9 +75,9 @@ public class ServerHttpRequestTests {
}
private ServerHttpRequest createHttpRequest(String path) throws Exception {
HttpServletRequest servletRequest = new MockHttpServletRequest("GET", path);
return new ServletServerHttpRequest(servletRequest,
new DefaultDataBufferFactory(), 1024);
HttpServletRequest request = new MockHttpServletRequest("GET", path);
AsyncContext asyncContext = new MockAsyncContext(request, new MockHttpServletResponse());
return new ServletServerHttpRequest(request, asyncContext, new DefaultDataBufferFactory(), 1024);
}
}