This commit is contained in:
Rossen Stoyanchev 2018-07-05 14:08:05 -04:00
parent 22f6e5b9ff
commit bb3061d112
1 changed files with 8 additions and 17 deletions

View File

@ -16,18 +16,15 @@
package org.springframework.http.server.reactive.bootstrap; package org.springframework.http.server.reactive.bootstrap;
import java.security.cert.CertificateException;
import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.AtomicReference;
import reactor.core.Exceptions; import io.netty.handler.ssl.SslContextBuilder;
import io.netty.handler.ssl.util.SelfSignedCertificate;
import reactor.netty.DisposableServer; import reactor.netty.DisposableServer;
import reactor.netty.tcp.SslProvider.DefaultConfigurationType; import reactor.netty.tcp.SslProvider.DefaultConfigurationType;
import org.springframework.http.server.reactive.ReactorHttpHandlerAdapter; import org.springframework.http.server.reactive.ReactorHttpHandlerAdapter;
import io.netty.handler.ssl.SslContextBuilder;
import io.netty.handler.ssl.util.SelfSignedCertificate;
/** /**
* @author Stephane Maldini * @author Stephane Maldini
*/ */
@ -41,22 +38,16 @@ public class ReactorHttpsServer extends AbstractHttpServer {
@Override @Override
protected void initServer() { protected void initServer() throws Exception {
SelfSignedCertificate cert = new SelfSignedCertificate();
SslContextBuilder builder = SslContextBuilder.forServer(cert.certificate(), cert.privateKey());
this.reactorHandler = createHttpHandlerAdapter(); this.reactorHandler = createHttpHandlerAdapter();
SelfSignedCertificate cert = null;
try {
cert = new SelfSignedCertificate();
}
catch (CertificateException e) {
throw Exceptions.propagate(e);
}
SslContextBuilder sslContextBuilder =
SslContextBuilder.forServer(cert.certificate(), cert.privateKey());
this.reactorServer = reactor.netty.http.server.HttpServer.create() this.reactorServer = reactor.netty.http.server.HttpServer.create()
.host(getHost()) .host(getHost())
.port(getPort()) .port(getPort())
.secure(sslContextSpec -> sslContextSpec.sslContext(sslContextBuilder) .secure(spec -> spec.sslContext(builder).defaultConfiguration(DefaultConfigurationType.TCP));
.defaultConfiguration(DefaultConfigurationType.TCP));
} }
private ReactorHttpHandlerAdapter createHttpHandlerAdapter() { private ReactorHttpHandlerAdapter createHttpHandlerAdapter() {