@Override public Publisher<Void> apply(ChannelStream<IN, OUT> inoutChannelStream) { final NettyHttpChannel<IN, OUT> ch = ((NettyHttpChannel<IN, OUT>) inoutChannelStream); return handler.apply(ch); } });
@Override public Publisher<Void> apply(ChannelStream<IN, OUT> inoutChannelStream) { final NettyHttpChannel<IN, OUT> ch = ((NettyHttpChannel<IN, OUT>) inoutChannelStream); return handler.apply(ch); } }, reconnect);
@Override public void channelActive(final ChannelHandlerContext ctx) throws Exception { super.channelActive(ctx); handler.apply(channelStream) .subscribe(new DefaultSubscriber<Void>() { @Override public void onSubscribe(Subscription s) { s.request(Long.MAX_VALUE); } @Override public void onError(Throwable t) { log.error("Error processing connection. Closing the channel.", t); ctx.writeAndFlush(Unpooled.EMPTY_BUFFER).addListener(ChannelFutureListener.CLOSE); } @Override public void onComplete() { ctx.writeAndFlush(Unpooled.EMPTY_BUFFER).addListener(ChannelFutureListener.CLOSE); } }); }
@Override public Publisher<Void> apply(HttpChannel<IN, OUT> inoutHttpChannel) { try { final NettyHttpChannel<IN, OUT> ch = ((NettyHttpChannel<IN, OUT>) inoutHttpChannel); ch.getNettyRequest() .setUri(currentURI.getPath() + (currentURI.getQuery() == null ? "" : "?" + currentURI.getQuery())) .setMethod(new HttpMethod(method.getName())) .headers() .add(HttpHeaders.Names.HOST, currentURI.getHost()) .add(HttpHeaders.Names.ACCEPT, "*/*"); if (handler != null) { Publisher<Void> p = handler.apply(ch); reply.onNext(ch); return p; } else { reply.onNext(ch); return Streams.empty(); } } catch (Throwable t) { reply.onError(t); return Promises.error(t); } }
request = new NettyHttpChannel<>(tcpStream, (io.netty.handler.codec.http.HttpRequest) msg); final Publisher<Void> closePublisher = handler.apply(request); final Subscriber<Void> closeSub = new DefaultSubscriber<Void>() {
.setSocket(socket); handler.apply(netChannel).subscribe(new DefaultSubscriber<Void>() { @Override public void onSubscribe(Subscription s) {
@Override public Publisher<Void> apply(ChannelStream<IN, OUT> ch) { NettyHttpChannel<IN, OUT> request = (NettyHttpChannel<IN, OUT>) ch; if (handler != null) { handler.apply(request); } Iterable<? extends Publisher<Void>> handlers = routeChannel(request); //404 if (handlers == null) { if (request.checkHeader()) { request.delegate().writeAndFlush( new DefaultHttpResponse(HttpVersion.HTTP_1_1, HttpResponseStatus.NOT_FOUND)); } return Streams.empty(); } return Streams.concat(handlers); } });
handler.apply(request) .subscribe(new DefaultSubscriber<Void>() { @Override