pub struct CommitGetV0 {
pub id: ObjectId,
pub topic: Option<TopicId>,
pub overlay: Option<OverlayId>,
}
Expand description
Request a Commit by ID
commit_header_key is always set to None in the reply when request is made on OuterOverlay of protected or Group overlays The difference with BlocksGet is that the Broker will try to return all the commit blocks as they were sent in the Pub/Sub Event, if it has it. This will help in having all the blocks (including the header and body blocks), while a BlocksGet would inevitably return only the blocks of the ObjectContent, and not the header nor the body. And the load() would fail with CommitLoadError::MissingBlocks. That’s what happens when the Commit is not present in the pubsub, and we need to default to using BlocksGet instead.
Fields§
§id: ObjectId
Commit ID to request
topic: Option<TopicId>
Topic the commit is referenced from, if it is known by the requester. can be used to do a BlockSearchTopic in the core overlay.
overlay: Option<OverlayId>
Trait Implementations§
Source§impl Clone for CommitGetV0
impl Clone for CommitGetV0
Source§fn clone(&self) -> CommitGetV0
fn clone(&self) -> CommitGetV0
1.0.0 · Source§const fn clone_from(&mut self, source: &Self)
const fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for CommitGetV0
impl Debug for CommitGetV0
Source§impl<'de> Deserialize<'de> for CommitGetV0
impl<'de> Deserialize<'de> for CommitGetV0
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>,
Auto Trait Implementations§
impl Freeze for CommitGetV0
impl RefUnwindSafe for CommitGetV0
impl Send for CommitGetV0
impl Sync for CommitGetV0
impl Unpin for CommitGetV0
impl UnwindSafe for CommitGetV0
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,
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>
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>
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