Vert.x中使用Pump类(JAVA)的简单TCP代理

Vert.x中使用Pump类(JAVA)的简单TCP代理,java,asynchronous,tcp,proxy,vert.x,Java,Asynchronous,Tcp,Proxy,Vert.x,我想在Vert.x中实现概念验证的TCP透明代理 要求 侦听端口X的垂直端口,当有人连接并发送数据时,它会打开指向预配置TCP服务器的客户端连接。 从这一刻起,直到任何一个对等方关闭连接,都会保留一个双向通道,数据在通道上下流动,从客户端到服务器,反之亦然 这是我的尝试,但不起作用 vertx.createNetServer().connectHandler(new Handler<NetSocket>() { public void handle(final Ne

我想在Vert.x中实现概念验证的TCP透明代理

要求 侦听端口X的垂直端口,当有人连接并发送数据时,它会打开指向预配置TCP服务器的客户端连接。 从这一刻起,直到任何一个对等方关闭连接,都会保留一个双向通道,数据在通道上下流动,从客户端到服务器,反之亦然

这是我的尝试,但不起作用

 vertx.createNetServer().connectHandler(new Handler<NetSocket>() {
        public void handle(final NetSocket socket) {
            vertx.createNetClient().connect(6367, "localhost", new Handler<NetSocket>() {

                @Override
                public void handle(NetSocket cliSocket) {
                    Pump.createPump(socket, cliSocket);
                    Pump.createPump(cliSocket, socket);

                }
            });     
    }
    }).listen(3000);
}
vertx.createNetServer().connectHandler(新处理程序(){
公共无效句柄(最终NetSocket套接字){
createNetClient().connect(6367,“localhost”,新处理程序(){
@凌驾
公共无效句柄(NetSocket cliSocket){
创建泵(插座、夹子插座);
Pump.createPump(cliSocket,socket);
}
});     
}
}).听(3000);
}
至少我是这样理解泵类的含义的:


我的错误在哪里?

我只是没能启动泵。然后它成功了

Pump.createPump(socket, cliSocket).start();
Pump.createPump(cliSocket, socket).start();