pub enum RemoteObjectPayloads {
SpooledInline,
SpooledExternal,
RowBlob {
locator_bytes: Vec<u8>,
},
}Expand description
Where a remote object’s payloads are, and what upload that implies.
A stored blob’s row rides inside published snapshot and bootstrap images, where a restoring device holds the row but none of the writing device’s payload spool, so it carries its locator in the row. Every other domain is read only on the device that wrote it and names its payloads in the spool: the plaintext under the identity’s semantic hash, the ciphertext under the exact object’s stored hash. Neither hash is repeated here — the identity already names both, and a second copy would be a second thing to keep in agreement.
Variants§
SpooledInline
Plaintext and ciphertext both in the spool. This device uploads the ciphertext from there.
SpooledExternal
The ciphertext was created outside this record — a staged image, or a package this device observed rather than sealed — so this record never uploads it. The plaintext is in the spool, except for the image domains, which have no plaintext at all.
RowBlob
The blob locator, in the row. The body is in the blob store and the device uploads it from its blob spool.
Implementations§
Source§impl RemoteObjectPayloads
impl RemoteObjectPayloads
Sourcepub fn carried_locator_bytes(&self) -> Option<&[u8]>
pub fn carried_locator_bytes(&self) -> Option<&[u8]>
The locator a stored blob’s row carries, and nothing for the domains whose payloads are in the spool.
Trait Implementations§
Source§impl Clone for RemoteObjectPayloads
impl Clone for RemoteObjectPayloads
Source§fn clone(&self) -> RemoteObjectPayloads
fn clone(&self) -> RemoteObjectPayloads
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RemoteObjectPayloads
impl Debug for RemoteObjectPayloads
Source§impl<'de> Deserialize<'de> for RemoteObjectPayloads
impl<'de> Deserialize<'de> for RemoteObjectPayloads
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>,
Source§impl PartialEq for RemoteObjectPayloads
impl PartialEq for RemoteObjectPayloads
Source§impl Serialize for RemoteObjectPayloads
impl Serialize for RemoteObjectPayloads
impl Eq for RemoteObjectPayloads
impl StructuralPartialEq for RemoteObjectPayloads
Auto Trait Implementations§
impl Freeze for RemoteObjectPayloads
impl RefUnwindSafe for RemoteObjectPayloads
impl Send for RemoteObjectPayloads
impl Sync for RemoteObjectPayloads
impl Unpin for RemoteObjectPayloads
impl UnsafeUnpin for RemoteObjectPayloads
impl UnwindSafe for RemoteObjectPayloads
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.