Package io.netty.handler.codec.string
Class StringEncoder
java.lang.Object
io.netty.channel.ChannelHandlerAdapter
io.netty.channel.ChannelOutboundHandlerAdapter
io.netty.handler.codec.MessageToMessageEncoder<CharSequence>
io.netty.handler.codec.string.StringEncoder
- All Implemented Interfaces:
ChannelHandler
,ChannelOutboundHandler
Encodes the requested
String
into a ByteBuf
.
A typical setup for a text-based line protocol in a TCP/IP socket would be:
and then you can use aChannelPipeline
pipeline = ...; // Decoders pipeline.addLast("frameDecoder", newLineBasedFrameDecoder
(80)); pipeline.addLast("stringDecoder", newStringDecoder
(CharsetUtil.UTF_8)); // Encoder pipeline.addLast("stringEncoder", newStringEncoder
(CharsetUtil.UTF_8));
String
instead of a ByteBuf
as a message:
void channelRead(ChannelHandlerContext
ctx,String
msg) { ch.write("Did you say '" + msg + "'?\n"); }
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.netty.channel.ChannelHandler
ChannelHandler.Sharable
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionCreates a new instance with the current system character set.StringEncoder
(Charset charset) Creates a new instance with the specified character set. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
encode
(ChannelHandlerContext ctx, CharSequence msg, List<Object> out) Encode from one message to an other.Methods inherited from class io.netty.handler.codec.MessageToMessageEncoder
acceptOutboundMessage, write
Methods inherited from class io.netty.channel.ChannelOutboundHandlerAdapter
bind, close, connect, deregister, disconnect, flush, read
Methods inherited from class io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, exceptionCaught, handlerAdded, handlerRemoved, isSharable
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.netty.channel.ChannelHandler
exceptionCaught, handlerAdded, handlerRemoved
-
Field Details
-
charset
-
-
Constructor Details
-
StringEncoder
public StringEncoder()Creates a new instance with the current system character set. -
StringEncoder
Creates a new instance with the specified character set.
-
-
Method Details
-
encode
protected void encode(ChannelHandlerContext ctx, CharSequence msg, List<Object> out) throws Exception Description copied from class:MessageToMessageEncoder
Encode from one message to an other. This method will be called for each written message that can be handled by this encoder.- Specified by:
encode
in classMessageToMessageEncoder<CharSequence>
- Parameters:
ctx
- theChannelHandlerContext
which thisMessageToMessageEncoder
belongs tomsg
- the message to encode to an other oneout
- theList
into which the encoded msg should be added needs to do some kind of aggregation- Throws:
Exception
- is thrown if an error occurs
-