io.netty.channel.ChannelHandlerContext#connect ( )源码实例Demo

下面列出了io.netty.channel.ChannelHandlerContext#connect ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

/**
 * Intercept the connect phase and store the original promise.
 */
@Override
public void connect(final ChannelHandlerContext ctx, final SocketAddress remoteAddress,
                    final SocketAddress localAddress, final ChannelPromise promise) throws Exception {
  originalPromise = promise;
  ChannelPromise inboundPromise = ctx.newPromise();
  inboundPromise.addListener(new GenericFutureListener<Future<Void>>() {
    @Override
    public void operationComplete(Future<Void> future) throws Exception {
      if (!future.isSuccess() && !originalPromise.isDone()) {
        originalPromise.setFailure(future.cause());
      }
    }
  });
  ctx.connect(remoteAddress, localAddress, inboundPromise);
}
 
源代码2 项目: java-dcp-client   文件: HandshakeTimeoutHandler.java
@Override
public void connect(final ChannelHandlerContext ctx, final SocketAddress remoteAddress,
                    final SocketAddress localAddress, final ChannelPromise promise) throws Exception {
  ctx.connect(remoteAddress, localAddress, promise);
  ctx.pipeline().remove(this);

  final Runnable fireDeadlineEvent = new Runnable() {
    /**
     * If there is a {@link ConnectInterceptingHandler} remaining in the pipeline,
     * it will respond to this event by failing the connection. If there are none
     * in the pipeline, the handshake is complete and this event is ignored.
     */
    @Override
    public void run() {
      LOGGER.debug("Firing handshake deadline event.");
      ctx.fireUserEventTriggered(HANDSHAKE_DEADLINE_EVENT);
    }
  };

  LOGGER.debug("Handshake timeout is {} {}.", timeout, timeoutUnit);
  ctx.executor().schedule(fireDeadlineEvent, timeout, timeoutUnit);
}
 
源代码3 项目: grpc-nebula-java   文件: TsiFrameHandler.java
@Override
public void connect(
    ChannelHandlerContext ctx,
    SocketAddress remoteAddress,
    SocketAddress localAddress,
    ChannelPromise promise) {
  ctx.connect(remoteAddress, localAddress, promise);
}
 
@Override
public void connect(ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress,
    ChannelPromise promise) throws Exception {
    originalPromise = promise;
    ChannelPromise downPromise = ctx.newPromise();
    downPromise.addListener(new GenericFutureListener<Future<Void>>() {
        @Override
        public void operationComplete(Future<Void> future) throws Exception {
            if (!future.isSuccess() && !originalPromise.isDone()) {
                originalPromise.setFailure(future.cause());
            }
        }
    });
    ctx.connect(remoteAddress, localAddress, downPromise);
}
 
源代码5 项目: netty-4.1.22   文件: ProxyHandler.java
@Override
public final void connect(
        ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress,
        ChannelPromise promise) throws Exception {

    if (destinationAddress != null) {
        promise.setFailure(new ConnectionPendingException());
        return;
    }

    destinationAddress = remoteAddress;
    ctx.connect(proxyAddress, localAddress, promise);
}
 
源代码6 项目: netty-4.1.22   文件: LoggingHandler.java
@Override
public void connect(
        ChannelHandlerContext ctx,
        SocketAddress remoteAddress, SocketAddress localAddress, ChannelPromise promise) throws Exception {
    if (logger.isEnabled(internalLevel)) {
        logger.log(internalLevel, format(ctx, "CONNECT", remoteAddress, localAddress));
    }
    ctx.connect(remoteAddress, localAddress, promise);
}
 
@Override
public void connect(ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress,
                    ChannelPromise promise) throws Exception {
    originalPromise = promise;
    ChannelPromise downPromise = ctx.newPromise();
    downPromise.addListener(new GenericFutureListener<Future<Void>>() {
        @Override
        public void operationComplete(Future<Void> future) throws Exception {
            if (!future.isSuccess() && !originalPromise.isDone()) {
                originalPromise.setFailure(future.cause());
            }
        }
    });
    ctx.connect(remoteAddress, localAddress, downPromise);
}
 
源代码8 项目: bazel-buildfarm   文件: AbstractHttpHandler.java
@SuppressWarnings("FutureReturnValueIgnored")
@Override
public void connect(
    ChannelHandlerContext ctx,
    SocketAddress remoteAddress,
    SocketAddress localAddress,
    ChannelPromise promise) {
  ctx.connect(remoteAddress, localAddress, promise);
}
 
源代码9 项目: netty.book.kor   文件: LoggingHandler.java
@Override
public void connect(
        ChannelHandlerContext ctx,
        SocketAddress remoteAddress, SocketAddress localAddress, ChannelPromise promise) throws Exception {
    if (logger.isEnabled(internalLevel)) {
        logger.log(internalLevel, format(ctx, "CONNECT", remoteAddress, localAddress));
    }
    ctx.connect(remoteAddress, localAddress, promise);
}
 
源代码10 项目: grpc-java   文件: TsiFrameHandler.java
@Override
public void connect(
    ChannelHandlerContext ctx,
    SocketAddress remoteAddress,
    SocketAddress localAddress,
    ChannelPromise promise) {
  ctx.connect(remoteAddress, localAddress, promise);
}
 
@Override
public void connect(ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress,
                    ChannelPromise promise) throws Exception {
    originalPromise = promise;
    ChannelPromise downPromise = ctx.newPromise();
    downPromise.addListener(new GenericFutureListener<Future<Void>>() {
        @Override
        public void operationComplete(Future<Void> future) throws Exception {
            if (!future.isSuccess() && !originalPromise.isDone()) {
                originalPromise.setFailure(future.cause());
            }
        }
    });
    ctx.connect(remoteAddress, localAddress, downPromise);
}
 
源代码12 项目: armeria   文件: HttpClientPipelineConfigurator.java
@Override
public void connect(ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress,
                    ChannelPromise promise) throws Exception {

    // Remember the requested remote address for later use.
    final InetSocketAddress inetRemoteAddr = (InetSocketAddress) remoteAddress;
    this.remoteAddress = inetRemoteAddr;

    // Configure the pipeline.
    final Channel ch = ctx.channel();
    ChannelUtil.disableWriterBufferWatermark(ch);

    final ChannelPipeline p = ch.pipeline();
    p.addLast(new FlushConsolidationHandler());
    p.addLast(ReadSuppressingAndChannelDeactivatingHandler.INSTANCE);

    try {
        if (sslCtx != null) {
            configureAsHttps(ch, inetRemoteAddr);
        } else {
            configureAsHttp(ch);
        }
    } catch (Throwable t) {
        promise.tryFailure(t);
        ctx.close();
    } finally {
        if (p.context(this) != null) {
            p.remove(this);
        }
    }

    ctx.connect(remoteAddress, localAddress, promise);
}
 
源代码13 项目: Ak47   文件: NettyChannelHandlerAdapter.java
@Override
public void connect(ChannelHandlerContext nettyctx, SocketAddress remoteAddress,
        SocketAddress localAddress, ChannelPromise promise)
        throws Exception {
    nettyctx.connect(remoteAddress, localAddress, promise);
}
 
源代码14 项目: netty-4.1.22   文件: Http2ConnectionHandler.java
@Override
public void connect(ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress,
                    ChannelPromise promise) throws Exception {
    ctx.connect(remoteAddress, localAddress, promise);
}
 
源代码15 项目: netty-4.1.22   文件: AbstractSniHandler.java
@Override
public void connect(ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress,
                    ChannelPromise promise) throws Exception {
    ctx.connect(remoteAddress, localAddress, promise);
}
 
源代码16 项目: netty-4.1.22   文件: SslHandler.java
@Override
public void connect(ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress,
                    ChannelPromise promise) throws Exception {
    ctx.connect(remoteAddress, localAddress, promise);
}
 
源代码17 项目: netty-http-server   文件: FilterLogginglHandler.java
public void connect(ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress, ChannelPromise promise) {
    ctx.connect(remoteAddress, localAddress, promise);
}
 
源代码18 项目: netty4.0.27Learn   文件: SpdyFrameCodec.java
@Override
public void connect(ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress,
                    ChannelPromise promise) throws Exception {
    ctx.connect(remoteAddress, localAddress, promise);
}
 
源代码19 项目: riiablo   文件: EndpointedChannelHandler.java
@Override
public void connect(ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress, ChannelPromise promise) throws Exception {
  if (DEBUG_CALLS) Gdx.app.debug(TAG, "connect");
  ctx.connect(remoteAddress, localAddress, promise);
}
 
源代码20 项目: riiablo   文件: EndpointedChannelHandler.java
@Override
public void connect(ChannelHandlerContext ctx, SocketAddress remoteAddress, SocketAddress localAddress, ChannelPromise promise) throws Exception {
  if (DEBUG_CALLS) Gdx.app.debug(TAG, "connect");
  ctx.connect(remoteAddress, localAddress, promise);
}