Как получить ответ сервера с помощью клиента netty

Я хочу написать клиент на основе нетто. Должен иметь методpublic String send (String msg); который должен вернуть ответ от сервера или какого-либо будущего - не имеет значения. Также он должен быть многопоточным. Как это:

public class Client {
public static void main(String[] args) throws InterruptedException {
    Client client = new Client();

}

private Channel channel;

public Client() throws InterruptedException {
    EventLoopGroup loopGroup = new NioEventLoopGroup();

    Bootstrap b = new Bootstrap();
    b.group(loopGroup).channel(NioSocketChannel.class).handler(new ChannelInitializer<SocketChannel>() {
        @Override
        protected void initChannel(SocketChannel ch) throws Exception {
            ch.pipeline().addLast(new StringDecoder()).
                    addLast(new StringEncoder()).
                    addLast(new ClientHandler());
        }
    });
    channel = b.connect("localhost", 9091).sync().channel();
}

public String sendMessage(String msg) {
    channel.writeAndFlush(msg);
    return ??????????;
}

}

И я не понимаю, как я могу получить ответ от сервера после того, как я вызову writeAndFlush (); Что я должен делать?

Также я использую Netty 4.0.18.Final

Ответы на вопрос(3)

Ваш ответ на вопрос