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: RepoHashRepo Hash
overlay: OverlayAccessfor 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: boolonly 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: u16Maximum 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 UnsafeUnpin 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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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