Struct sync15::bso::IncomingBso

source ·
pub struct IncomingBso {
    pub envelope: IncomingEnvelope,
    pub payload: String,
}
Expand description

IncomingBso’s can come from:

  • Directly from the server (ie, some records aren’t encrypted, such as meta/global)
  • From environments where the encryption is done externally (eg, Rust syncing in Desktop Firefox has the encryption/decryption done by Firefox and the cleartext BSOs are passed in.
  • Read from the server as an EncryptedBso; see EncryptedBso description above.

Fields§

§envelope: IncomingEnvelope§payload: String

Implementations§

source§

impl IncomingBso

source

pub fn into_content<T: for<'de> Deserialize<'de>>(self) -> IncomingContent<T>

Convert an IncomingBso to an IncomingContent possibly holding a T.

source

pub fn into_content_with_fixup<T: for<'de> Deserialize<'de>>( self, fixup: impl FnOnce(&mut Value) ) -> IncomingContent<T>

Like into_content, but adds an additional fixup step where the caller can adjust the `serde_json::Value’

source§

impl IncomingBso

Helpers to create an IncomingBso from some T

source

pub fn from_test_content<T: Serialize>(json: T) -> Self

When a test has an T and wants it as an IncomingBso

source

pub fn from_test_content_ts<T: Serialize>(json: T, ts: ServerTimestamp) -> Self

When a test has an T and wants it as an IncomingBso with a specific timestamp.

source

pub fn new_test_tombstone(guid: Guid) -> Self

When a test wants a new incoming tombstone.

source§

impl IncomingBso

source

pub fn new(envelope: IncomingEnvelope, payload: String) -> Self

Trait Implementations§

source§

impl Debug for IncomingBso

source§

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

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

impl<'de> Deserialize<'de> for IncomingBso

source§

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§

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> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T, UT> HandleAlloc<UT> for T
where T: Send + Sync,

§

fn new_handle(value: Arc<T>) -> Handle

Create a new handle for an Arc value Read more
§

unsafe fn clone_handle(handle: Handle) -> Handle

Clone a handle Read more
§

unsafe fn consume_handle(handle: Handle) -> Arc<T>

Consume a handle, getting back the initial Arc<> Read more
§

unsafe fn get_arc(handle: Handle) -> Arc<Self>

Get a clone of the Arc<> using a “borrowed” handle. 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, U> TryFrom<U> for T
where U: Into<T>,

§

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>,

§

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.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

source§

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