Package io.netty.handler.codec.string
Class StringDecoder
- java.lang.Object
-
- io.netty.channel.ChannelHandlerAdapter
-
- io.netty.channel.ChannelInboundHandlerAdapter
-
- io.netty.handler.codec.MessageToMessageDecoder<ByteBuf>
-
- io.netty.handler.codec.string.StringDecoder
-
- All Implemented Interfaces:
ChannelHandler
,ChannelInboundHandler
@Sharable public class StringDecoder extends MessageToMessageDecoder<ByteBuf>
Decodes a receivedByteBuf
into aString
. Please note that this decoder must be used with a properByteToMessageDecoder
such asDelimiterBasedFrameDecoder
orLineBasedFrameDecoder
if you are using a stream-based transport such as TCP/IP. A typical setup for a text-based line protocol in a TCP/IP socket would be:ChannelPipeline
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 aByteBuf
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
-
-
Constructor Summary
Constructors Constructor Description StringDecoder()
Creates a new instance with the current system character set.StringDecoder(java.nio.charset.Charset charset)
Creates a new instance with the specified character set.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
decode(ChannelHandlerContext ctx, ByteBuf msg, java.util.List<java.lang.Object> out)
Decode from one message to an other.-
Methods inherited from class io.netty.handler.codec.MessageToMessageDecoder
acceptInboundMessage, channelRead, channelReadComplete
-
Methods inherited from class io.netty.channel.ChannelInboundHandlerAdapter
channelActive, channelInactive, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaught, userEventTriggered
-
Methods inherited from class io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, 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
handlerAdded, handlerRemoved
-
-
-
-
Method Detail
-
decode
protected void decode(ChannelHandlerContext ctx, ByteBuf msg, java.util.List<java.lang.Object> out) throws java.lang.Exception
Description copied from class:MessageToMessageDecoder
Decode from one message to an other. This method will be called for each written message that can be handled by this decoder.- Specified by:
decode
in classMessageToMessageDecoder<ByteBuf>
- Parameters:
ctx
- theChannelHandlerContext
which thisMessageToMessageDecoder
belongs tomsg
- the message to decode to an other oneout
- theList
to which decoded messages should be added- Throws:
java.lang.Exception
- is thrown if an error occurs
-
-