Struct holochain::conductor::Cell [−][src]
pub struct Cell<Api = CellConductorApi, P2pCell = HolochainP2pCell> where
Api: CellConductorApiT,
P2pCell: HolochainP2pCellT, { /* fields omitted */ }
Expand description
A Cell is a grouping of the resources necessary to run workflows on behalf of an agent. It does not have a lifetime of its own aside from the lifetimes of the resources which it holds references to. Any work it does is through running a workflow, passing references to the resources needed to complete that workflow.
A Cell is guaranteed to contain a Source Chain which has undergone Genesis.
The [Conductor] manages a collection of Cells, and will call functions on the Cell when a Conductor API method is called (either a CellConductorApi or an [AppInterfaceApi])
Implementations
pub async fn create(
id: CellId,
conductor_handle: ConductorHandle,
env: EnvWrite,
cache: EnvWrite,
holochain_p2p_cell: HolochainP2pCell,
managed_task_add_sender: Sender<ManagedTaskAdd>,
managed_task_stop_broadcaster: Sender<()>
) -> Result<(Self, InitialQueueTriggers), CellError>
pub async fn create(
id: CellId,
conductor_handle: ConductorHandle,
env: EnvWrite,
cache: EnvWrite,
holochain_p2p_cell: HolochainP2pCell,
managed_task_add_sender: Sender<ManagedTaskAdd>,
managed_task_stop_broadcaster: Sender<()>
) -> Result<(Self, InitialQueueTriggers), CellError>
Constructor for a Cell, which ensure the Cell is fully initialized before returning.
If it hasn’t happened already, a SourceChain will be created, and genesis will be run. If these have already happened, those steps are skipped.
No Cell will be created if the SourceChain is not ready to be used.
Performs the Genesis workflow the Cell, ensuring that its initial elements are committed. This is a prerequisite for any other interaction with the SourceChain
Access a network sender that is partially applied to this cell’s DnaHash/AgentPubKey
pub async fn handle_holochain_p2p_event(
&self,
evt: HolochainP2pEvent
) -> Result<(), CellError>
pub async fn handle_holochain_p2p_event(
&self,
evt: HolochainP2pEvent
) -> Result<(), CellError>
Entry point for incoming messages from the network that need to be handled
pub async fn call_zome(
&self,
call: ZomeCall,
workspace_lock: Option<HostFnWorkspace>
) -> Result<ZomeCallResult, CellError>
pub async fn call_zome(
&self,
call: ZomeCall,
workspace_lock: Option<HostFnWorkspace>
) -> Result<ZomeCallResult, CellError>
Function called by the Conductor
Delete all data associated with this Cell by DELETING the associated LMDB environment. Completely reverses Cell creation. NB: This is NOT meant to be a Drop impl! This destroys all data associated with a Cell, i.e. this Cell can never be instantiated again!
Trait Implementations
Auto Trait Implementations
impl<Api = CellConductorApi, P2pCell = HolochainP2pCell> !RefUnwindSafe for Cell<Api, P2pCell>
impl<Api = CellConductorApi, P2pCell = HolochainP2pCell> !UnwindSafe for Cell<Api, P2pCell>
Blanket Implementations
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
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
pub fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
pub fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Mutably borrows from an owned value. Read more
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>
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
pub fn vzip(self) -> V
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more