Struct ic_agent::agent::AgentBuilder
source · pub struct AgentBuilder { /* private fields */ }
Expand description
A builder for an Agent
.
Implementations§
source§impl AgentBuilder
impl AgentBuilder
sourcepub fn build(self) -> Result<Agent, AgentError>
pub fn build(self) -> Result<Agent, AgentError>
Create an instance of Agent with the information from this builder.
sourcepub fn with_url<S: Into<String>>(self, url: S) -> Self
👎Deprecated since 0.3.0: Prefer using with_transport().
pub fn with_url<S: Into<String>>(self, url: S) -> Self
Set the URL of the Agent.
sourcepub fn with_transport<T: 'static + ReplicaV2Transport>(
self,
transport: T
) -> Self
pub fn with_transport<T: 'static + ReplicaV2Transport>(
self,
transport: T
) -> Self
Set a Replica transport to talk to serve as the replica interface.
sourcepub fn with_arc_transport(self, transport: Arc<dyn ReplicaV2Transport>) -> Self
pub fn with_arc_transport(self, transport: Arc<dyn ReplicaV2Transport>) -> Self
Same as Self::with_transport, but provides a Arc
boxed implementation instead
of a direct type.
sourcepub fn with_nonce_factory(self, nonce_factory: NonceFactory) -> AgentBuilder
pub fn with_nonce_factory(self, nonce_factory: NonceFactory) -> AgentBuilder
Add a NonceFactory to this Agent. By default, no nonce is produced.
sourcepub fn with_nonce_generator<N: 'static + NonceGenerator>(
self,
nonce_factory: N
) -> AgentBuilder
pub fn with_nonce_generator<N: 'static + NonceGenerator>(
self,
nonce_factory: N
) -> AgentBuilder
Same as Self::with_nonce_factory, but for any NonceGenerator
type
sourcepub fn with_arc_nonce_generator(
self,
nonce_factory: Arc<dyn NonceGenerator>
) -> AgentBuilder
pub fn with_arc_nonce_generator(
self,
nonce_factory: Arc<dyn NonceGenerator>
) -> AgentBuilder
Same as Self::with_nonce_generator, but provides a Arc
boxed implementation instead
of a direct type.
sourcepub fn with_identity<I>(self, identity: I) -> Selfwhere
I: 'static + Identity,
pub fn with_identity<I>(self, identity: I) -> Selfwhere
I: 'static + Identity,
Add an identity provider for signing messages. This is required.
sourcepub fn with_boxed_identity(self, identity: Box<dyn Identity>) -> Self
pub fn with_boxed_identity(self, identity: Box<dyn Identity>) -> Self
Same as Self::with_identity, but provides a boxed implementation instead of a direct type.
sourcepub fn with_arc_identity(self, identity: Arc<dyn Identity>) -> Self
pub fn with_arc_identity(self, identity: Arc<dyn Identity>) -> Self
Same as Self::with_identity, but provides a Arc
boxed implementation instead
of a direct type.
sourcepub fn with_ingress_expiry(self, duration: Option<Duration>) -> Self
pub fn with_ingress_expiry(self, duration: Option<Duration>) -> Self
Provides a default ingress expiry. This is the delta that will be applied at the time an update or query is made. The default expiry cannot be a fixed system time.