Enum Message

Source
pub enum Message {
Show 19 variants ClientSetup(ClientSetupSecureConnection), ClientAuthentification(ClientAuthentication), Insert(Insertion), InsertOpe(InsertionOpe), InsertResponse { inserted_id: String, }, Query(Query), QueryResponse(QueryOutput), SingleValueResponse { data: Option<Vec<u8>>, nonce: Option<Vec<u8>>, }, Count(CountSubject), CountResponse(u32), Update(Update), UpdateResponse { status: UpdateStatus, }, Delete(Delete), DeleteResult(bool), DeleteForUsecase { collection: String, id: String, }, Drop(DropSubject), DropResult(bool), EndOfCommunication, CloseCommunication,
}
Expand description

Enum representing different types of messages exchanged between the client and server.

Variants§

§

ClientSetup(ClientSetupSecureConnection)

Message sent by the client when setting up a secure connection. The associated ClientSetupSecureConnection contains the necessary information for establishing the secure connection.

§

ClientAuthentification(ClientAuthentication)

Message used for client authentication. The associated ClientAuthentication typically contains the credentials needed for authentication.

§

Insert(Insertion)

Used by the client to insert data into the database. The Insertion structure typically contains the data to be inserted along with metadata such as the collection in which the data should be stored.

§

InsertOpe(InsertionOpe)

Similar to Insert, but used specifically for inserting data that is encrypted using Order-Preserving Encryption (OPE).

§

InsertResponse

Sent by the server in response to an Insert message to acknowledge that the data has been inserted. Contains the ID of the inserted data.

Fields

§inserted_id: String
§

Query(Query)

Used by the client to query data from the database. The Query structure contains the necessary information to perform the data query.

§

QueryResponse(QueryOutput)

Sent by the server in response to a Query message. Contains the data retrieved as a result of the query.

§

SingleValueResponse

Sent by the server in response to a query that requests a single value. Contains the requested data, or None if it doesn’t exist.

Fields

§data: Option<Vec<u8>>
§nonce: Option<Vec<u8>>
§

Count(CountSubject)

Message sent by the client to request a count of documents that meet certain criteria. The CountSubject structure defines the criteria for counting.

§

CountResponse(u32)

Sent by the server in response to a Count message. Contains the number of documents that meet the specified criteria.

§

Update(Update)

Message sent by the client to request an update to existing data. The Update structure contains the details of what data should be updated and how.

§

UpdateResponse

Sent by the server in response to an Update message to indicate the status of the update operation.

Fields

§

Delete(Delete)

Message sent by the client to request the deletion of data. The Delete structure contains the details of what data should be deleted.

§

DeleteResult(bool)

Sent by the server to indicate the result of a deletion request.

§

DeleteForUsecase

Message sent by the client to delete data for a specific use case. Contains the collection name and the ID of the document to be deleted.

Fields

§collection: String
§

Drop(DropSubject)

Message sent by the client to request the deletion of an entire collection or use case. The DropSubject structure defines what should be dropped.

§

DropResult(bool)

Sent by the server to indicate the result of a drop request.

§

EndOfCommunication

Message indicating the end of a communication sequence.

§

CloseCommunication

Message requesting the termination of the communication channel.

Implementations§

Trait Implementations§

Source§

impl Clone for Message

Source§

fn clone(&self) -> Message

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Message

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for Message

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl PartialEq for Message

Source§

fn eq(&self, other: &Message) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for Message

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl Eq for Message

Source§

impl StructuralPartialEq for Message

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,