pub struct Spaces { /* private fields */ }
Expand description
This is the set of all current
DnaHash
spaces for all cells
installed on this conductor.
Implementations
sourceimpl Spaces
impl Spaces
sourcepub fn new(
root_db_dir: DatabaseRootPath,
db_sync_strategy: DbSyncStrategy
) -> ConductorResult<Self>
pub fn new(
root_db_dir: DatabaseRootPath,
db_sync_strategy: DbSyncStrategy
) -> ConductorResult<Self>
Create a new empty set of DnaHash
spaces.
sourcepub fn get_from_spaces<R, F: FnMut(&Space) -> R>(&self, f: F) -> Vec<R>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
pub fn get_from_spaces<R, F: FnMut(&Space) -> R>(&self, f: F) -> Vec<R>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
Get something from every space
sourcepub fn get_or_create_space(&self, dna_hash: &DnaHash) -> ConductorResult<Space>
pub fn get_or_create_space(&self, dna_hash: &DnaHash) -> ConductorResult<Space>
Get the space if it exists or create it if it doesn’t.
sourcepub fn cache(&self, dna_hash: &DnaHash) -> ConductorResult<DbWrite<DbKindCache>>
pub fn cache(&self, dna_hash: &DnaHash) -> ConductorResult<DbWrite<DbKindCache>>
Get the cache database (this will create the space if it doesn’t already exist).
Get the authored database (this will create the space if it doesn’t already exist).
sourcepub fn dht_db(&self, dna_hash: &DnaHash) -> ConductorResult<DbWrite<DbKindDht>>
pub fn dht_db(&self, dna_hash: &DnaHash) -> ConductorResult<DbWrite<DbKindDht>>
Get the dht database (this will create the space if it doesn’t already exist).
sourcepub fn p2p_agents_db(
&self,
dna_hash: &DnaHash
) -> ConductorResult<DbWrite<DbKindP2pAgents>>
pub fn p2p_agents_db(
&self,
dna_hash: &DnaHash
) -> ConductorResult<DbWrite<DbKindP2pAgents>>
Get the peer database (this will create the space if it doesn’t already exist).
sourcepub fn p2p_metrics_db(
&self,
dna_hash: &DnaHash
) -> ConductorResult<DbWrite<DbKindP2pMetrics>>
pub fn p2p_metrics_db(
&self,
dna_hash: &DnaHash
) -> ConductorResult<DbWrite<DbKindP2pMetrics>>
Get the peer database (this will create the space if it doesn’t already exist).
sourcepub fn p2p_batch_sender(
&self,
dna_hash: &DnaHash
) -> ConductorResult<Sender<P2pBatch>>
pub fn p2p_batch_sender(
&self,
dna_hash: &DnaHash
) -> ConductorResult<Sender<P2pBatch>>
Get the batch sender (this will create the space if it doesn’t already exist).
sourcepub async fn handle_query_op_hashes(
&self,
dna_hash: &DnaHash,
dht_arc_set: DhtArcSet,
window: TimeWindow,
max_ops: usize,
include_limbo: bool
) -> ConductorResult<Option<(Vec<DhtOpHash>, TimeWindowInclusive)>>
pub async fn handle_query_op_hashes(
&self,
dna_hash: &DnaHash,
dht_arc_set: DhtArcSet,
window: TimeWindow,
max_ops: usize,
include_limbo: bool
) -> ConductorResult<Option<(Vec<DhtOpHash>, TimeWindowInclusive)>>
the network module is requesting a list of dht op hashes
Get the DhtOpHash
es and authored timestamps for a given time window.
sourcepub async fn handle_fetch_op_data(
&self,
dna_hash: &DnaHash,
op_hashes: Vec<DhtOpHash>
) -> ConductorResult<Vec<(DhtOpHash, DhtOp)>>
pub async fn handle_fetch_op_data(
&self,
dna_hash: &DnaHash,
op_hashes: Vec<DhtOpHash>
) -> ConductorResult<Vec<(DhtOpHash, DhtOp)>>
The network module is requesting the content for dht ops
sourcepub async fn handle_publish(
&self,
dna_hash: &DnaHash,
request_validation_receipt: bool,
countersigning_session: bool,
ops: Vec<DhtOp>
) -> ConductorResult<()>
pub async fn handle_publish(
&self,
dna_hash: &DnaHash,
request_validation_receipt: bool,
countersigning_session: bool,
ops: Vec<DhtOp>
) -> ConductorResult<()>
we are receiving a “publish” event from the network
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for Spaces
impl Send for Spaces
impl Sync for Spaces
impl Unpin for Spaces
impl !UnwindSafe for Spaces
Blanket Implementations
impl<T> Any for T where
T: Any + ?Sized,
impl<T> Any for T where
T: Any + ?Sized,
fn type_id_compat(&self) -> TypeId
fn type_id_compat(&self) -> TypeId
TODO: once 1.33.0 is the minimum supported compiler version, remove Any::type_id_compat and use StdAny::type_id instead. https://github.com/rust-lang/rust/issues/27745 Read more
impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<F, W, T, D> Deserialize<With<T, W>, D> for F where
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
impl<F, W, T, D> Deserialize<With<T, W>, D> for F where
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
Deserializes using the given deserializer
impl<T> FutureExt for T
impl<T> FutureExt for T
fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T> Pointable for T
impl<T> Pointable for T
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more