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);
}
少なくとも、私は Pump クラスの意味を次のように理解しました。
http://vertx.io/core_manual_java.html#pump
私のエラーはどこですか?