pub struct DatabaseEvent {
pub channel: String,
pub event_type: String,
pub payload: Value,
pub correlation_id: Option<String>,
pub timestamp: String,
}Expand description
Database event with typed payload
Fields§
§channel: StringEvent channel name
event_type: StringEvent type (e.g., “user.created”, “token.updated”)
payload: ValueEvent payload as JSON
correlation_id: Option<String>Optional correlation ID for distributed tracing
timestamp: StringEvent timestamp (ISO 8601)
Implementations§
Source§impl DatabaseEvent
impl DatabaseEvent
Sourcepub fn new(
channel: impl Into<String>,
event_type: impl Into<String>,
payload: Value,
) -> Self
pub fn new( channel: impl Into<String>, event_type: impl Into<String>, payload: Value, ) -> Self
Create a new database event
Sourcepub fn with_correlation_id(self, correlation_id: impl Into<String>) -> Self
pub fn with_correlation_id(self, correlation_id: impl Into<String>) -> Self
Set correlation ID for distributed tracing
Sourcepub fn from_notification(notification: &PgNotification) -> Result<Self>
pub fn from_notification(notification: &PgNotification) -> Result<Self>
Parse event from PostgreSQL notification
Sourcepub fn to_json_string(&self) -> Result<String>
pub fn to_json_string(&self) -> Result<String>
Serialize event to JSON string for NOTIFY
Trait Implementations§
Source§impl Clone for DatabaseEvent
impl Clone for DatabaseEvent
Source§fn clone(&self) -> DatabaseEvent
fn clone(&self) -> DatabaseEvent
Returns a duplicate of the value. Read more
1.0.0 · 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 DatabaseEvent
impl Debug for DatabaseEvent
Source§impl<'de> Deserialize<'de> for DatabaseEvent
impl<'de> Deserialize<'de> for DatabaseEvent
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for DatabaseEvent
impl RefUnwindSafe for DatabaseEvent
impl Send for DatabaseEvent
impl Sync for DatabaseEvent
impl Unpin for DatabaseEvent
impl UnwindSafe for DatabaseEvent
Blanket Implementations§
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> 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 more