Extract CompositeHttpHandler functionality
Extract CompositeHttpHandler to a package private class and add direct support via `HttpHandler.of(...)`. This removes the need for the `HttpHandlerAdapterSupport` class.
This commit is contained in:
committed by
Rossen Stoyanchev
parent
170057005e
commit
57d2fcef55
@@ -34,11 +34,11 @@ import static org.junit.Assert.assertTrue;
|
||||
import static org.junit.Assert.fail;
|
||||
|
||||
/**
|
||||
* Unit tests for {@link HttpHandlerAdapterSupport}.
|
||||
* Unit tests for {@link HttpHandler}.
|
||||
*
|
||||
* @author Rossen Stoyanchev
|
||||
*/
|
||||
public class HttpHandlerAdapterSupportTests {
|
||||
public class HttpHandlerTests {
|
||||
|
||||
@Test
|
||||
public void invalidContextPath() {
|
||||
@@ -139,10 +139,14 @@ public class HttpHandlerAdapterSupportTests {
|
||||
|
||||
|
||||
@SuppressWarnings("WeakerAccess")
|
||||
private static class TestHttpHandlerAdapter extends HttpHandlerAdapterSupport {
|
||||
private static class TestHttpHandlerAdapter {
|
||||
|
||||
|
||||
private final HttpHandler httpHandler;
|
||||
|
||||
|
||||
public TestHttpHandlerAdapter(Map<String, HttpHandler> handlerMap) {
|
||||
super(handlerMap);
|
||||
this.httpHandler = HttpHandler.of(handlerMap);
|
||||
}
|
||||
|
||||
public ServerHttpResponse handle(String path) {
|
||||
@@ -152,7 +156,7 @@ public class HttpHandlerAdapterSupportTests {
|
||||
|
||||
public ServerHttpResponse handle(ServerHttpRequest request) {
|
||||
ServerHttpResponse response = new MockServerHttpResponse();
|
||||
getHttpHandler().handle(request, response);
|
||||
this.httpHandler.handle(request, response);
|
||||
return response;
|
||||
}
|
||||
}
|
||||
@@ -20,7 +20,7 @@ import org.eclipse.jetty.server.Server;
|
||||
import org.eclipse.jetty.server.ServerConnector;
|
||||
import org.eclipse.jetty.servlet.ServletContextHandler;
|
||||
import org.eclipse.jetty.servlet.ServletHolder;
|
||||
|
||||
import org.springframework.http.server.reactive.HttpHandler;
|
||||
import org.springframework.http.server.reactive.JettyHttpHandlerAdapter;
|
||||
import org.springframework.http.server.reactive.ServletHttpHandlerAdapter;
|
||||
|
||||
@@ -53,8 +53,8 @@ public class JettyHttpServer extends AbstractHttpServer {
|
||||
}
|
||||
|
||||
private ServletHttpHandlerAdapter createServletAdapter() {
|
||||
return getHttpHandlerMap() != null ? new JettyHttpHandlerAdapter(getHttpHandlerMap()) :
|
||||
new JettyHttpHandlerAdapter(getHttpHandler());
|
||||
return new JettyHttpHandlerAdapter(getHttpHandlerMap() != null
|
||||
? HttpHandler.of(getHttpHandlerMap()) : getHttpHandler());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -21,6 +21,7 @@ import java.util.concurrent.atomic.AtomicReference;
|
||||
import reactor.core.Loopback;
|
||||
import reactor.ipc.netty.NettyContext;
|
||||
|
||||
import org.springframework.http.server.reactive.HttpHandler;
|
||||
import org.springframework.http.server.reactive.ReactorHttpHandlerAdapter;
|
||||
|
||||
/**
|
||||
@@ -42,9 +43,8 @@ public class ReactorHttpServer extends AbstractHttpServer implements Loopback {
|
||||
}
|
||||
|
||||
private ReactorHttpHandlerAdapter createHttpHandlerAdapter() {
|
||||
return (getHttpHandlerMap() != null ?
|
||||
new ReactorHttpHandlerAdapter(getHttpHandlerMap()) :
|
||||
new ReactorHttpHandlerAdapter(getHttpHandler()));
|
||||
return new ReactorHttpHandlerAdapter(getHttpHandlerMap() != null
|
||||
? HttpHandler.of(getHttpHandlerMap()) : getHttpHandler());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -18,6 +18,7 @@ package org.springframework.http.server.reactive.bootstrap;
|
||||
|
||||
import io.netty.buffer.ByteBuf;
|
||||
|
||||
import org.springframework.http.server.reactive.HttpHandler;
|
||||
import org.springframework.http.server.reactive.RxNettyHttpHandlerAdapter;
|
||||
|
||||
/**
|
||||
@@ -37,9 +38,8 @@ public class RxNettyHttpServer extends AbstractHttpServer {
|
||||
}
|
||||
|
||||
private RxNettyHttpHandlerAdapter createHttpHandlerAdapter() {
|
||||
return (getHttpHandlerMap() != null ?
|
||||
new RxNettyHttpHandlerAdapter(getHttpHandlerMap()) :
|
||||
new RxNettyHttpHandlerAdapter(getHttpHandler()));
|
||||
return new RxNettyHttpHandlerAdapter(getHttpHandlerMap() != null
|
||||
? HttpHandler.of(getHttpHandlerMap()) : getHttpHandler());
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -21,7 +21,7 @@ import java.io.File;
|
||||
import org.apache.catalina.Context;
|
||||
import org.apache.catalina.LifecycleException;
|
||||
import org.apache.catalina.startup.Tomcat;
|
||||
|
||||
import org.springframework.http.server.reactive.HttpHandler;
|
||||
import org.springframework.http.server.reactive.ServletHttpHandlerAdapter;
|
||||
import org.springframework.http.server.reactive.TomcatHttpHandlerAdapter;
|
||||
import org.springframework.util.Assert;
|
||||
@@ -68,9 +68,8 @@ public class TomcatHttpServer extends AbstractHttpServer {
|
||||
}
|
||||
|
||||
private ServletHttpHandlerAdapter initServletAdapter() {
|
||||
return getHttpHandlerMap() != null ?
|
||||
new TomcatHttpHandlerAdapter(getHttpHandlerMap()) :
|
||||
new TomcatHttpHandlerAdapter(getHttpHandler());
|
||||
return new TomcatHttpHandlerAdapter(getHttpHandlerMap() != null
|
||||
? HttpHandler.of(getHttpHandlerMap()) : getHttpHandler());
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@ import java.net.InetSocketAddress;
|
||||
|
||||
import io.undertow.Undertow;
|
||||
|
||||
import org.springframework.http.server.reactive.HttpHandler;
|
||||
import org.springframework.http.server.reactive.UndertowHttpHandlerAdapter;
|
||||
|
||||
/**
|
||||
@@ -38,9 +39,8 @@ public class UndertowHttpServer extends AbstractHttpServer {
|
||||
}
|
||||
|
||||
private UndertowHttpHandlerAdapter initHttpHandlerAdapter() {
|
||||
return getHttpHandlerMap() != null ?
|
||||
new UndertowHttpHandlerAdapter(getHttpHandlerMap()) :
|
||||
new UndertowHttpHandlerAdapter(getHttpHandler());
|
||||
return new UndertowHttpHandlerAdapter(getHttpHandlerMap() != null
|
||||
? HttpHandler.of(getHttpHandlerMap()) : getHttpHandler());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user