pub struct ReadBranchLinkV0 {
pub repo: RepoId,
pub branch: BranchId,
pub topic: TopicId,
pub heads: Vec<ObjectRef>,
pub read_cap: ReadCap,
pub overlay: OverlayLink,
pub peers: Vec<PeerAdvert>,
}
Expand description
Read access to a branch of a Public, Protected or Group store.
The overlay to join can be the outer or the inner, depending on what was offered in the link. The difference between the two is that in the outer overlay, only one broker is contacted. In the inner overlay, all the publisher’s brokers are contacted, so subscription to the pub/sub is more reliable, less prone to outage. This is not a durable link. If the topic has been refreshed, the pubsub won’t be able to be subscribed to, but TopicSyncReq will still work (answering the commits up until the moment the topic was refreshed) and the optional heads will always be retrievable
Fields§
§repo: RepoId
Repository ID
branch: BranchId
§topic: TopicId
§heads: Vec<ObjectRef>
an optional list of heads that can be fetched in this branch useful if a specific head is to be shared
read_cap: ReadCap
read capability for the branch current (at the time of sharing the link) branch definition commit
overlay: OverlayLink
Current overlay link, used to join the overlay, most of the time, an outerOverlay is preferred
peers: Vec<PeerAdvert>
Peer brokers to connect to
Trait Implementations§
Source§impl Clone for ReadBranchLinkV0
impl Clone for ReadBranchLinkV0
Source§fn clone(&self) -> ReadBranchLinkV0
fn clone(&self) -> ReadBranchLinkV0
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 ReadBranchLinkV0
impl Debug for ReadBranchLinkV0
Source§impl<'de> Deserialize<'de> for ReadBranchLinkV0
impl<'de> Deserialize<'de> for ReadBranchLinkV0
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 ReadBranchLinkV0
impl RefUnwindSafe for ReadBranchLinkV0
impl Send for ReadBranchLinkV0
impl Sync for ReadBranchLinkV0
impl Unpin for ReadBranchLinkV0
impl UnwindSafe for ReadBranchLinkV0
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