Package io.netty.handler.codec.stomp
Class StompSubframeEncoder
- java.lang.Object
-
- io.netty.channel.ChannelHandlerAdapter
-
- io.netty.channel.ChannelOutboundHandlerAdapter
-
- io.netty.handler.codec.MessageToMessageEncoder<StompSubframe>
-
- io.netty.handler.codec.stomp.StompSubframeEncoder
-
- All Implemented Interfaces:
ChannelHandler,ChannelOutboundHandler
public class StompSubframeEncoder extends MessageToMessageEncoder<StompSubframe>
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface io.netty.channel.ChannelHandler
ChannelHandler.Sharable
-
-
Field Summary
Fields Modifier and Type Field Description private static floatDEFAULT_LOAD_FACTORprivate static FastThreadLocal<java.util.LinkedHashMap<java.lang.CharSequence,java.lang.CharSequence>>ESCAPE_HEADER_KEY_CACHEprivate static intESCAPE_HEADER_KEY_CACHE_LIMIT
-
Constructor Summary
Constructors Constructor Description StompSubframeEncoder()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.lang.ObjectconvertContentSubFrame(StompContentSubframe original, ByteBuf encoded)An extension method to convert a STOMP encoded buffer to a different message type based on an originalStompHeadersSubframecontent sub frame.protected java.lang.ObjectconvertFullFrame(StompFrame original, ByteBuf encoded)An extension method to convert a STOMP encoded buffer to a different message type based on an originalStompFramefull frame.protected java.lang.ObjectconvertHeadersSubFrame(StompHeadersSubframe original, ByteBuf encoded)An extension method to convert a STOMP encoded buffer to a different message type based on an originalStompHeadersSubframeheaders sub frame.protected voidencode(ChannelHandlerContext ctx, StompSubframe msg, java.util.List<java.lang.Object> out)Encode from one message to an other.private static ByteBufencodeContent(StompContentSubframe content, ChannelHandlerContext ctx)private ByteBufencodeFullFrame(StompFrame frame, ChannelHandlerContext ctx)private static voidencodeHeaders(StompHeadersSubframe frame, ByteBuf buf)private static java.lang.CharSequenceescape(java.lang.CharSequence input)private static AppendableCharSequenceescapeBuilder(AppendableCharSequence builder, java.lang.CharSequence input, int offset)protected intheadersSubFrameSize(StompHeadersSubframe headersSubframe)Returns a heuristic size for headers (32 bytes per header line) + (2 bytes for colon and eol) + (additional command buffer).private static booleanshouldEscape(StompCommand command)-
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 Detail
-
ESCAPE_HEADER_KEY_CACHE_LIMIT
private static final int ESCAPE_HEADER_KEY_CACHE_LIMIT
- See Also:
- Constant Field Values
-
DEFAULT_LOAD_FACTOR
private static final float DEFAULT_LOAD_FACTOR
- See Also:
- Constant Field Values
-
ESCAPE_HEADER_KEY_CACHE
private static final FastThreadLocal<java.util.LinkedHashMap<java.lang.CharSequence,java.lang.CharSequence>> ESCAPE_HEADER_KEY_CACHE
-
-
Method Detail
-
encode
protected void encode(ChannelHandlerContext ctx, StompSubframe msg, java.util.List<java.lang.Object> out) throws java.lang.Exception
Description copied from class:MessageToMessageEncoderEncode from one message to an other. This method will be called for each written message that can be handled by this encoder.- Specified by:
encodein classMessageToMessageEncoder<StompSubframe>- Parameters:
ctx- theChannelHandlerContextwhich thisMessageToMessageEncoderbelongs tomsg- the message to encode to an other oneout- theListinto which the encoded msg should be added needs to do some kind of aggregation- Throws:
java.lang.Exception- is thrown if an error occurs
-
convertFullFrame
protected java.lang.Object convertFullFrame(StompFrame original, ByteBuf encoded)
An extension method to convert a STOMP encoded buffer to a different message type based on an originalStompFramefull frame.By default an encoded buffer is returned as is.
-
convertHeadersSubFrame
protected java.lang.Object convertHeadersSubFrame(StompHeadersSubframe original, ByteBuf encoded)
An extension method to convert a STOMP encoded buffer to a different message type based on an originalStompHeadersSubframeheaders sub frame.By default an encoded buffer is returned as is.
-
convertContentSubFrame
protected java.lang.Object convertContentSubFrame(StompContentSubframe original, ByteBuf encoded)
An extension method to convert a STOMP encoded buffer to a different message type based on an originalStompHeadersSubframecontent sub frame.By default an encoded buffer is returned as is.
-
headersSubFrameSize
protected int headersSubFrameSize(StompHeadersSubframe headersSubframe)
Returns a heuristic size for headers (32 bytes per header line) + (2 bytes for colon and eol) + (additional command buffer).
-
encodeFullFrame
private ByteBuf encodeFullFrame(StompFrame frame, ChannelHandlerContext ctx)
-
encodeHeaders
private static void encodeHeaders(StompHeadersSubframe frame, ByteBuf buf)
-
encodeContent
private static ByteBuf encodeContent(StompContentSubframe content, ChannelHandlerContext ctx)
-
shouldEscape
private static boolean shouldEscape(StompCommand command)
-
escape
private static java.lang.CharSequence escape(java.lang.CharSequence input)
-
escapeBuilder
private static AppendableCharSequence escapeBuilder(AppendableCharSequence builder, java.lang.CharSequence input, int offset)
-
-