@Override
protected <T extends ConnectFuture> ConnectFuture connectInternal(final ResourceAddress address, final IoHandler handler,
final IoSessionInitializer<T> initializer) {
final ConnectFuture connectFuture = new DefaultConnectFuture();
final ResourceAddress transportAddress = address.getTransport();
final IoSessionInitializer<T> httpSessionInitializer = createHttpSessionInitializer(handler, initializer);
HttpConnectSessionFactory httpSessionFactory = new DefaultHttpConnectSessionFactory(this, address, httpSessionInitializer, connectFuture);
if (transportAddress != null) {
Executor ioExecutor = org.kaazing.mina.core.session.AbstractIoSessionEx.CURRENT_WORKER.get();
if (ioExecutor == null) {
connectInternal0(connectFuture, address, httpSessionFactory);
} else {
ioExecutor.execute(() -> connectInternal0(connectFuture, address, httpSessionFactory));
}
}
return connectFuture;
}