Change-Id: I69a19898c2d4ea916f895d588dc9af20f036e1ef
Signed-off-by: Matus Marko <matus.marko@pantheon.sk>
.externalToolBuilders/\r
maven-eclipse.xml\r
.checkstyle\r
.externalToolBuilders/\r
maven-eclipse.xml\r
.checkstyle\r
+.idea\r
+*.iws\r
+*.iml\r
import javax.net.ssl.SSLEngine;
import javax.net.ssl.SSLEngine;
+import io.netty.util.concurrent.Future;
+import io.netty.util.concurrent.GenericFutureListener;
import org.opendaylight.openflowjava.protocol.impl.core.connection.ConnectionAdapterFactory;
import org.opendaylight.openflowjava.protocol.impl.core.connection.ConnectionAdapterFactoryImpl;
import org.opendaylight.openflowjava.protocol.impl.core.connection.ConnectionFacade;
import org.opendaylight.openflowjava.protocol.impl.core.connection.ConnectionAdapterFactory;
import org.opendaylight.openflowjava.protocol.impl.core.connection.ConnectionAdapterFactoryImpl;
import org.opendaylight.openflowjava.protocol.impl.core.connection.ConnectionFacade;
SSLEngine engine = sslFactory.getServerContext().createSSLEngine();
engine.setNeedClientAuth(true);
engine.setUseClientMode(false);
SSLEngine engine = sslFactory.getServerContext().createSSLEngine();
engine.setNeedClientAuth(true);
engine.setUseClientMode(false);
- ch.pipeline().addLast(PipelineHandlers.SSL_HANDLER.name(), new SslHandler(engine));
+ SslHandler ssl = new SslHandler(engine);
+ Future<Channel> handshakeFuture = ssl.handshakeFuture();
+ final ConnectionFacade finalConnectionFacade = connectionFacade;
+ handshakeFuture.addListener(new GenericFutureListener<Future<? super Channel>>() {
+ @Override
+ public void operationComplete(Future<? super Channel> future) throws Exception {
+ finalConnectionFacade.fireConnectionReadyNotification();
+ }
+ });
+ ch.pipeline().addLast(PipelineHandlers.SSL_HANDLER.name(), ssl);
}
ch.pipeline().addLast(PipelineHandlers.OF_FRAME_DECODER.name(),
new OFFrameDecoder(connectionFacade, tlsPresent));
}
ch.pipeline().addLast(PipelineHandlers.OF_FRAME_DECODER.name(),
new OFFrameDecoder(connectionFacade, tlsPresent));