Struct holochain_p2p::HolochainP2pDna
source · [−]pub struct HolochainP2pDna { /* private fields */ }
Expand description
A wrapper around HolochainP2pSender that partially applies the dna_hash / agent_pub_key. I.e. a sender that is tied to a specific cell.
Trait Implementations
sourceimpl Clone for HolochainP2pDna
impl Clone for HolochainP2pDna
sourcefn clone(&self) -> HolochainP2pDna
fn clone(&self) -> HolochainP2pDna
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl HolochainP2pDnaT for HolochainP2pDna
impl HolochainP2pDnaT for HolochainP2pDna
sourcefn join<'life0, 'async_trait>(
&'life0 self,
agent: AgentPubKey
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn join<'life0, 'async_trait>(
&'life0 self,
agent: AgentPubKey
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
The p2p module must be informed at runtime which dna/agent pairs it should be tracking.
sourcefn leave<'life0, 'async_trait>(
&'life0 self,
agent: AgentPubKey
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn leave<'life0, 'async_trait>(
&'life0 self,
agent: AgentPubKey
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
If a cell is disabled, we’ll need to "leave" the network module as well.
sourcefn call_remote<'life0, 'async_trait>(
&'life0 self,
from_agent: AgentPubKey,
to_agent: AgentPubKey,
zome_name: ZomeName,
fn_name: FunctionName,
cap_secret: Option<CapSecret>,
payload: ExternIO
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<SerializedBytes>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn call_remote<'life0, 'async_trait>(
&'life0 self,
from_agent: AgentPubKey,
to_agent: AgentPubKey,
zome_name: ZomeName,
fn_name: FunctionName,
cap_secret: Option<CapSecret>,
payload: ExternIO
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<SerializedBytes>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Invoke a zome function on a remote node (if you have been granted the capability).
sourcefn remote_signal<'life0, 'async_trait>(
&'life0 self,
from_agent: AgentPubKey,
to_agent_list: Vec<AgentPubKey>,
zome_name: ZomeName,
fn_name: FunctionName,
cap: Option<CapSecret>,
payload: ExternIO
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn remote_signal<'life0, 'async_trait>(
&'life0 self,
from_agent: AgentPubKey,
to_agent_list: Vec<AgentPubKey>,
zome_name: ZomeName,
fn_name: FunctionName,
cap: Option<CapSecret>,
payload: ExternIO
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Invoke a zome function on a remote node (if you have been granted the capability). This is a fire-and-forget operation, a best effort will be made to forward the signal, but if the conductor network is overworked it may decide not to deliver some of the signals.
sourcefn publish<'life0, 'async_trait>(
&'life0 self,
request_validation_receipt: bool,
countersigning_session: bool,
dht_hash: AnyDhtHash,
ops: Vec<(DhtOpHash, DhtOp)>,
timeout_ms: Option<u64>
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn publish<'life0, 'async_trait>(
&'life0 self,
request_validation_receipt: bool,
countersigning_session: bool,
dht_hash: AnyDhtHash,
ops: Vec<(DhtOpHash, DhtOp)>,
timeout_ms: Option<u64>
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Publish data to the correct neighborhood.
sourcefn get_validation_package<'life0, 'async_trait>(
&'life0 self,
request_from: AgentPubKey,
header_hash: HeaderHash
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<ValidationPackageResponse>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get_validation_package<'life0, 'async_trait>(
&'life0 self,
request_from: AgentPubKey,
header_hash: HeaderHash
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<ValidationPackageResponse>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Request a validation package.
sourcefn get<'life0, 'async_trait>(
&'life0 self,
dht_hash: AnyDhtHash,
options: GetOptions
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<Vec<WireOps>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get<'life0, 'async_trait>(
&'life0 self,
dht_hash: AnyDhtHash,
options: GetOptions
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<Vec<WireOps>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Get an entry from the DHT.
sourcefn get_meta<'life0, 'async_trait>(
&'life0 self,
dht_hash: AnyDhtHash,
options: GetMetaOptions
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<Vec<MetadataSet>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get_meta<'life0, 'async_trait>(
&'life0 self,
dht_hash: AnyDhtHash,
options: GetMetaOptions
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<Vec<MetadataSet>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Get metadata from the DHT.
sourcefn get_links<'life0, 'async_trait>(
&'life0 self,
link_key: WireLinkKey,
options: GetLinksOptions
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<Vec<WireLinkOps>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get_links<'life0, 'async_trait>(
&'life0 self,
link_key: WireLinkKey,
options: GetLinksOptions
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<Vec<WireLinkOps>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Get links from the DHT.
sourcefn get_agent_activity<'life0, 'async_trait>(
&'life0 self,
agent: AgentPubKey,
query: ChainQueryFilter,
options: GetActivityOptions
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<Vec<AgentActivityResponse<HeaderHash>>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get_agent_activity<'life0, 'async_trait>(
&'life0 self,
agent: AgentPubKey,
query: ChainQueryFilter,
options: GetActivityOptions
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<Vec<AgentActivityResponse<HeaderHash>>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Get agent activity from the DHT.
sourcefn send_validation_receipt<'life0, 'async_trait>(
&'life0 self,
to_agent: AgentPubKey,
receipt: SerializedBytes
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn send_validation_receipt<'life0, 'async_trait>(
&'life0 self,
to_agent: AgentPubKey,
receipt: SerializedBytes
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Send a validation receipt to a remote node.
Check if an agent is an authority for a hash.
Response from an authority to agents that are part of a session. Read more
sourcefn new_integrated_data<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn new_integrated_data<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = HolochainP2pResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
New data has been integrated and is ready for gossiping.
Auto Trait Implementations
impl !RefUnwindSafe for HolochainP2pDna
impl Send for HolochainP2pDna
impl Sync for HolochainP2pDna
impl Unpin for HolochainP2pDna
impl !UnwindSafe for HolochainP2pDna
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
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
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
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
pub 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