Я пытаюсь реализовать очень простой сервер сокетов. Мне нужно прочитать несколько сообщений, разделенных новой строкой или любым другим разделителем.
Согласно этой документации: http://netty.io/4.0/api/io/netty/handler/codec/string/StringDecoder.html и http://netty.io/4.0/api/io/netty/handler/codec/DelimiterBasedFrameDecoder.html.
этот код для инициализатора канала
ChannelInitializer<SocketChannel> channelInitializer = new ChannelInitializer<SocketChannel>() {
@Override
public void initChannel(SocketChannel ch) throws Exception {
ch.pipeline().addLast("frameDecoder", new DelimiterBasedFrameDecoder(Delimiters.lineDelimiter()));
ch.pipeline().addLast("stringDecoder", new StringDecoder(CharsetUtil.UTF_8));
// Encoder
ch.pipeline().addLast("stringEncoder", new StringEncoder(CharsetUtil.UTF_8));
}
};
должен сделать свое дело.
но нет подходящих конструкторов для любого из декодеров и кодировщиков, которые работали бы с предоставленными параметрами. они ожидают некоторого целого числа в качестве первого параметра и массива байтов. только stringDecoder кажется в порядке.
что мне здесь не хватает?