Class Bind
java.lang.Object
io.r2dbc.postgresql.message.frontend.Bind
- All Implemented Interfaces:
FrontendMessage, FrontendMessage.DirectEncoder
The Bind message.
-
Nested Class Summary
Nested classes/interfaces inherited from interface FrontendMessage
FrontendMessage.DirectEncoder -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoiddispose()Release any resources (such as bound parameter buffers) held by this message without encoding it.voidencode(io.netty.buffer.ByteBuf byteBuf) Encode a message directly by writing its content to aByteBuf.Publisher<io.netty.buffer.ByteBuf> encode(io.netty.buffer.ByteBufAllocator byteBufAllocator) Encode a message into aByteBuf.booleaninthashCode()toString()
-
Field Details
-
NULL_VALUE
public static final io.netty.buffer.ByteBuf NULL_VALUEA marker indicating aNULLvalue. -
UNNAMED_PORTAL
-
UNNAMED_STATEMENT
-
-
Constructor Details
-
Bind
public Bind(String name, List<io.r2dbc.postgresql.message.Format> parameterFormats, List<io.netty.buffer.ByteBuf> parameters, Collection<io.r2dbc.postgresql.message.Format> resultFormats, String source) Create a new message.- Parameters:
name- the name of the destination portal (an empty string selects the unnamed portal)parameterFormats- the parameter formatsparameters- the value of the parameters, in the format indicated by the associated formatresultFormats- the result formatssource- the name of the source prepared statement (an empty string selects the unnamed prepared statement)- Throws:
IllegalArgumentException- ifname,parameterFormats,parameters,resultFormats, orsourceisnull- See Also:
-
-
Method Details
-
encode
Description copied from interface:FrontendMessageEncode a message into aByteBuf.- Specified by:
encodein interfaceFrontendMessage- Parameters:
byteBufAllocator- the byteBufAllocator to use to get aByteBufto write into- Returns:
- a
Publisherthat produces theByteBufcontaining the encoded message
-
encode
public void encode(io.netty.buffer.ByteBuf byteBuf) Description copied from interface:FrontendMessage.DirectEncoderEncode a message directly by writing its content to aByteBuf.- Specified by:
encodein interfaceFrontendMessage.DirectEncoder- Parameters:
byteBuf- the targetByteBufto write into
-
dispose
public void dispose()Description copied from interface:FrontendMessageRelease any resources (such as bound parameter buffers) held by this message without encoding it. Invoked when a message is discarded before reaching the wire, e.g. when the connection is closed or the conversation is cancelled while the message is still queued. The default implementation does nothing. Implementations that own reference-counted buffers must release them here and must be idempotent so that disposal is safe regardless of whether the message was already encoded.- Specified by:
disposein interfaceFrontendMessage
-
equals
-
hashCode
-
toString
-