pub enum FrontendMessage {
Startup {
protocol_version: i32,
params: HashMap<String, String>,
},
Password {
password: String,
},
Query {
query: String,
},
Terminate,
SSLRequest,
Subscribe {
query: String,
params: Vec<Option<Vec<u8>>>,
filter: Option<String>,
selective_updates_config: Option<SelectiveUpdatesConfig>,
},
Unsubscribe {
subscription_id: [u8; 16],
},
SubscriptionPause {
subscription_id: [u8; 16],
},
SubscriptionResume {
subscription_id: [u8; 16],
},
}Expand description
Frontend message types (client -> server)
Variants§
Startup
Startup message
Password
Password message
Query
Query message
Terminate
Terminate message
SSLRequest
SSL request
Subscribe
Subscribe message (0xF0) - subscribe to query The optional filter is a SQL WHERE clause expression applied to subscription updates. The optional selective_updates_config allows clients to override server-level selective update settings.
Fields
§
selective_updates_config: Option<SelectiveUpdatesConfig>Unsubscribe
Unsubscribe message (0xF1) - cancel subscription
SubscriptionPause
Pause subscription message (0xF5) - temporarily pause updates
SubscriptionResume
Resume subscription message (0xF6) - resume paused subscription
Implementations§
Source§impl FrontendMessage
impl FrontendMessage
Sourcepub fn decode(buf: &mut BytesMut) -> Result<Option<Self>, ProtocolError>
pub fn decode(buf: &mut BytesMut) -> Result<Option<Self>, ProtocolError>
Decode a frontend message from bytes
Sourcepub fn decode_startup(buf: &mut BytesMut) -> Result<Option<Self>, ProtocolError>
pub fn decode_startup(buf: &mut BytesMut) -> Result<Option<Self>, ProtocolError>
Decode startup message (special case - no message type byte)
Trait Implementations§
Source§impl Clone for FrontendMessage
impl Clone for FrontendMessage
Source§fn clone(&self) -> FrontendMessage
fn clone(&self) -> FrontendMessage
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for FrontendMessage
impl Debug for FrontendMessage
Source§impl PartialEq for FrontendMessage
impl PartialEq for FrontendMessage
Source§fn eq(&self, other: &FrontendMessage) -> bool
fn eq(&self, other: &FrontendMessage) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for FrontendMessage
Auto Trait Implementations§
impl Freeze for FrontendMessage
impl RefUnwindSafe for FrontendMessage
impl Send for FrontendMessage
impl Sync for FrontendMessage
impl Unpin for FrontendMessage
impl UnsafeUnpin for FrontendMessage
impl UnwindSafe for FrontendMessage
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request