Package org.mockserver.netty.proxy
Class PostgresqlMessageFramer
java.lang.Object
io.netty.channel.ChannelHandlerAdapter
io.netty.channel.ChannelInboundHandlerAdapter
io.netty.handler.codec.ByteToMessageDecoder
org.mockserver.netty.proxy.BinaryMessageFramer
org.mockserver.netty.proxy.PostgresqlMessageFramer
- All Implemented Interfaces:
io.netty.channel.ChannelHandler,io.netty.channel.ChannelInboundHandler
Cuts a binary connection into the messages of the PostgreSQL frontend/backend protocol (version 3), as a client
sends them. Until the startup message a message is an int32 length (itself included) then an int32 code;
SSLRequest, GSSENCRequest and CancelRequest are such messages too and leave the next one untyped. From the startup
message on a message is a type byte then an int32 length (itself included).
-
Nested Class Summary
Nested classes/interfaces inherited from class io.netty.handler.codec.ByteToMessageDecoder
io.netty.handler.codec.ByteToMessageDecoder.CumulatorNested classes/interfaces inherited from interface io.netty.channel.ChannelHandler
io.netty.channel.ChannelHandler.Sharable -
Field Summary
Fields inherited from class org.mockserver.netty.proxy.BinaryMessageFramer
NOT_YET_KNOWNFields inherited from class io.netty.handler.codec.ByteToMessageDecoder
COMPOSITE_CUMULATOR, MERGE_CUMULATOR -
Constructor Summary
ConstructorsConstructorDescriptionPostgresqlMessageFramer(int maxMessageBytes, org.mockserver.logging.MockServerLogger mockServerLogger) -
Method Summary
Modifier and TypeMethodDescriptionprotected longmessageBytes(io.netty.channel.ChannelHandlerContext ctx, io.netty.buffer.ByteBuf in) How many bytes the message that starts at the reader index has,BinaryMessageFramer.NOT_YET_KNOWNwhile the bytes held cannot say, or anything afterBinaryMessageFramer.refuse(io.netty.channel.ChannelHandlerContext, io.netty.buffer.ByteBuf, java.lang.String).protected voidmessageTaken(io.netty.buffer.ByteBuf message) Called with each whole message before it is passed on.Methods inherited from class org.mockserver.netty.proxy.BinaryMessageFramer
atMessageBoundary, bytesBeforeTlsMayStart, decode, forConfiguration, maxMessageBytes, protocolAllowsTlsHere, refuse, tlsMayStartHereMethods inherited from class io.netty.handler.codec.ByteToMessageDecoder
actualReadableBytes, callDecode, channelInactive, channelRead, channelReadComplete, decodeLast, discardSomeReadBytes, handlerRemoved, handlerRemoved0, internalBuffer, isSingleDecode, setCumulator, setDiscardAfterReads, setSingleDecode, userEventTriggeredMethods inherited from class io.netty.channel.ChannelInboundHandlerAdapter
channelActive, channelRegistered, channelUnregistered, channelWritabilityChanged, exceptionCaughtMethods inherited from class io.netty.channel.ChannelHandlerAdapter
ensureNotSharable, handlerAdded, isSharableMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.netty.channel.ChannelHandler
handlerAdded
-
Constructor Details
-
PostgresqlMessageFramer
public PostgresqlMessageFramer(int maxMessageBytes, org.mockserver.logging.MockServerLogger mockServerLogger)
-
-
Method Details
-
messageBytes
protected long messageBytes(io.netty.channel.ChannelHandlerContext ctx, io.netty.buffer.ByteBuf in) Description copied from class:BinaryMessageFramerHow many bytes the message that starts at the reader index has,BinaryMessageFramer.NOT_YET_KNOWNwhile the bytes held cannot say, or anything afterBinaryMessageFramer.refuse(io.netty.channel.ChannelHandlerContext, io.netty.buffer.ByteBuf, java.lang.String). Must not move the reader index.- Specified by:
messageBytesin classBinaryMessageFramer
-
messageTaken
protected void messageTaken(io.netty.buffer.ByteBuf message) Description copied from class:BinaryMessageFramerCalled with each whole message before it is passed on.- Overrides:
messageTakenin classBinaryMessageFramer
-