Package io.micronaut.http.server.netty
Class SmartHttpContentCompressor
java.lang.Object
io.netty.channel.ChannelHandlerAdapter
io.netty.channel.ChannelInboundHandlerAdapter
io.netty.channel.ChannelDuplexHandler
io.netty.handler.codec.MessageToMessageCodec<io.netty.handler.codec.http.HttpRequest,io.netty.handler.codec.http.HttpObject>
io.netty.handler.codec.http.HttpContentEncoder
io.netty.handler.codec.http.HttpContentCompressor
io.micronaut.http.server.netty.SmartHttpContentCompressor
- All Implemented Interfaces:
io.netty.channel.ChannelHandler,io.netty.channel.ChannelInboundHandler,io.netty.channel.ChannelOutboundHandler
@Internal
public class SmartHttpContentCompressor
extends io.netty.handler.codec.http.HttpContentCompressor
An extension of
HttpContentCompressor that skips encoding if the content type is not compressible or if
the content is too small.- Since:
- 1.0
-
Nested Class Summary
Nested classes/interfaces inherited from class io.netty.handler.codec.http.HttpContentEncoder
io.netty.handler.codec.http.HttpContentEncoder.ResultNested classes/interfaces inherited from interface io.netty.channel.ChannelHandler
io.netty.channel.ChannelHandler.Sharable -
Method Summary
Modifier and TypeMethodDescriptionprotected io.netty.handler.codec.http.HttpContentEncoder.ResultbeginEncode(io.netty.handler.codec.http.HttpResponse headers, String acceptEncoding) protected voidencode(io.netty.channel.ChannelHandlerContext ctx, io.netty.handler.codec.http.HttpObject msg, List<Object> out) booleanshouldSkip(io.netty.handler.codec.http.HttpResponse response) Determines if encoding should occur based on the response.Methods inherited from class io.netty.handler.codec.http.HttpContentCompressor
determineEncoding, determineWrapper, handlerAddedMethods inherited from class io.netty.handler.codec.http.HttpContentEncoder
acceptOutboundMessage, channelInactive, decode, handlerRemovedMethods inherited from class io.netty.handler.codec.MessageToMessageCodec
acceptInboundMessage, channelRead, writeMethods inherited from class io.netty.channel.ChannelDuplexHandler
bind, close, connect, deregister, disconnect, flush, readMethods inherited from class io.netty.channel.ChannelInboundHandlerAdapter
channelActive, channelReadComplete, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaught, userEventTriggeredMethods inherited from class io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, isSharable
-
Method Details
-
shouldSkip
public boolean shouldSkip(io.netty.handler.codec.http.HttpResponse response) Determines if encoding should occur based on the response.- Parameters:
response- The response- Returns:
- True if the content should not be compressed
-
encode
protected void encode(io.netty.channel.ChannelHandlerContext ctx, io.netty.handler.codec.http.HttpObject msg, List<Object> out) throws Exception - Overrides:
encodein classio.netty.handler.codec.http.HttpContentEncoder- Throws:
Exception
-
beginEncode
protected io.netty.handler.codec.http.HttpContentEncoder.Result beginEncode(io.netty.handler.codec.http.HttpResponse headers, String acceptEncoding) throws Exception - Overrides:
beginEncodein classio.netty.handler.codec.http.HttpContentCompressor- Throws:
Exception
-