pub struct PinRepoV0 {
pub hash: RepoHash,
pub overlay: OverlayAccess,
pub overlay_root_topic: Option<TopicId>,
pub expose_outer: bool,
pub peers: Vec<PeerAdvert>,
pub max_peer_count: u16,
pub ro_topics: Vec<TopicId>,
pub rw_topics: Vec<PublisherAdvert>,
}
Expand description
Request to pin a repo on the broker.
When client will disconnect, the subscriptions and publisherAdvert of the topics will remain active on the broker. replied with a RepoOpened
Fields§
§hash: RepoHash
Repo Hash
overlay: OverlayAccess
for RW overlay, the overlay that should be used in the clientmessage is the innerOverlay
overlay_root_topic: Option<TopicId>
Root topic of the overlay, used to listen to overlay refreshes. Only used for inner (RW or WO) overlays
expose_outer: bool
only possible for RW overlays. not allowed for private or dialog overlay
peers: Vec<PeerAdvert>
Broker peers to connect to in order to join the overlay If the repo has previously been opened (during the same session) or if it is a private overlay, then peers info can be omitted. If there are no known peers in the overlay yet, vector is left empty (creation of a store, or repo in a store that is owned by user).
max_peer_count: u16
Maximum number of peers to connect to for this overlay (only valid for an inner (RW/WO) overlay)
ro_topics: Vec<TopicId>
list of topics that should be subscribed to If the repo has previously been opened (during the same session) then ro_topics info can be omitted
rw_topics: Vec<PublisherAdvert>
list of topics for which we will be a publisher only possible with inner (RW or WO) overlays. If the repo has previously been opened (during the same session) then rw_topics info can be omitted
Trait Implementations§
Source§impl<'de> Deserialize<'de> for PinRepoV0
impl<'de> Deserialize<'de> for PinRepoV0
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 PinRepoV0
impl RefUnwindSafe for PinRepoV0
impl Send for PinRepoV0
impl Sync for PinRepoV0
impl Unpin for PinRepoV0
impl UnwindSafe for PinRepoV0
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