public class ExtendedQueryProtocolHandlerHandles the message flow for the extended query protocol. Wire-protocol messages are buffered in memory until a flush/sync is received.
Constructors
ExtendedQueryProtocolHandler(ConnectionHandler connectionHandler)
public ExtendedQueryProtocolHandler(ConnectionHandler connectionHandler)Creates an ExtendedQueryProtocolHandler for the given connection.
| Name | Description |
| connectionHandler | ConnectionHandler |
ExtendedQueryProtocolHandler(ConnectionHandler connectionHandler, BackendConnection backendConnection)
public ExtendedQueryProtocolHandler(ConnectionHandler connectionHandler, BackendConnection backendConnection)Constructor only intended for testing.
| Name | Description |
| connectionHandler | ConnectionHandler |
| backendConnection | BackendConnection |
Methods
buffer(AbstractQueryProtocolMessage message)
public void buffer(AbstractQueryProtocolMessage message)Buffer an extended query protocol message for execution when the next flush/sync message is received.
| Name | Description |
| message | AbstractQueryProtocolMessage |
flush()
public void flush()Flushes the current queue of messages. Any pending database statements are first executed, before sending the wire-protocol responses to the frontend. A flush does not commit the implicit transaction (if any).
This method will execute a #sync() if it determines that the next message in the buffer is a Sync message.
| Type | Description |
| Exception |
getBackendConnection()
public BackendConnection getBackendConnection()Returns the backend PG connection for this query handler.
| Type | Description |
| BackendConnection |
sync()
public void sync()Flushes the current queue of messages and commits the implicit transaction (if any). Any pending database statements are first executed, before sending the wire-protocol responses to the frontend.
| Type | Description |
| Exception |