[−][src]Trait safe_app::Client
Trait providing an interface for self-authentication client implementations, so they can interface all requests from high-level APIs to the actual routing layer and manage all interactions with it. Clients are non-blocking, with an asynchronous API using the futures abstraction from the futures-rs crate.
Associated Types
type Context
Associated message type.
Required methods
#[must_use]fn full_id<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = SafeKey> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self
) -> Pin<Box<dyn Future<Output = SafeKey> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Return the client's ID.
#[must_use]fn owner_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Returns the client's owner key.
#[must_use]fn config<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Option<HashSet<SocketAddr, RandomState>>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self
) -> Pin<Box<dyn Future<Output = Option<HashSet<SocketAddr, RandomState>>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Return a crust::Config
if the Client
was initialized with one.
fn inner(&self) -> Arc<Mutex<Inner>>
Return an associated ClientInner
type which is expected to contain fields associated with
the implementing type.
#[must_use]fn public_encryption_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Return the public encryption key.
#[must_use]fn secret_encryption_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = SecretKey> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self
) -> Pin<Box<dyn Future<Output = SecretKey> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Return the secret encryption key.
#[must_use]fn secret_symmetric_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Key> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self
) -> Pin<Box<dyn Future<Output = Key> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Return the symmetric encryption key.
Provided methods
#[must_use]fn public_id<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicId> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicId> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Return the client's public ID.
#[must_use]fn public_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Returns the client's public key.
#[must_use]fn encryption_keypair<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = (PublicKey, SecretKey)> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self
) -> Pin<Box<dyn Future<Output = (PublicKey, SecretKey)> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Return the public and secret encryption keys.
#[must_use]fn compose_message<'life0, 'async_trait>(
&'life0 self,
request: Request,
sign: bool
) -> Pin<Box<dyn Future<Output = Message> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
request: Request,
sign: bool
) -> Pin<Box<dyn Future<Output = Message> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Create a Message
from the given request.
This function adds the requester signature and message ID.
#[must_use]fn set_timeout<'life0, 'async_trait>(
&'life0 self,
duration: Duration
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
duration: Duration
) -> Pin<Box<dyn Future<Output = ()> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Set request timeout.
#[must_use]fn restart_network<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Restart the client and reconnect to the network.
#[must_use]fn put_unseq_mutable_data<'life0, 'async_trait>(
&'life0 self,
data: UnseqData
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
data: UnseqData
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Put unsequenced mutable data to the network
#[must_use]fn transfer_coins<'life0, 'life1, 'async_trait>(
&'life0 self,
client_id: Option<&'life1 FullId>,
destination: XorName,
amount: Coins,
transaction_id: Option<u64>
) -> Pin<Box<dyn Future<Output = Result<Transaction, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
&'life0 self,
client_id: Option<&'life1 FullId>,
destination: XorName,
amount: Coins,
transaction_id: Option<u64>
) -> Pin<Box<dyn Future<Output = Result<Transaction, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Transfer coin balance
#[must_use]fn create_balance<'life0, 'life1, 'async_trait>(
&'life0 self,
client_id: Option<&'life1 FullId>,
new_balance_owner: PublicKey,
amount: Coins,
transaction_id: Option<u64>
) -> Pin<Box<dyn Future<Output = Result<Transaction, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
&'life0 self,
client_id: Option<&'life1 FullId>,
new_balance_owner: PublicKey,
amount: Coins,
transaction_id: Option<u64>
) -> Pin<Box<dyn Future<Output = Result<Transaction, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Creates a new balance on the network.
#[must_use]fn insert_login_packet_for<'life0, 'life1, 'async_trait>(
&'life0 self,
client_id: Option<&'life1 FullId>,
new_owner: PublicKey,
amount: Coins,
transaction_id: Option<u64>,
new_login_packet: LoginPacket
) -> Pin<Box<dyn Future<Output = Result<Transaction, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
&'life0 self,
client_id: Option<&'life1 FullId>,
new_owner: PublicKey,
amount: Coins,
transaction_id: Option<u64>,
new_login_packet: LoginPacket
) -> Pin<Box<dyn Future<Output = Result<Transaction, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Insert a given login packet at the specified destination
#[must_use]fn get_balance<'life0, 'life1, 'async_trait>(
&'life0 self,
client_id: Option<&'life1 FullId>
) -> Pin<Box<dyn Future<Output = Result<Coins, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
&'life0 self,
client_id: Option<&'life1 FullId>
) -> Pin<Box<dyn Future<Output = Result<Coins, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Get the current coin balance.
#[must_use]fn put_idata<'life0, 'async_trait, D>(
&'life0 self,
data: D
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
D: Into<Data> + Send + 'async_trait,
Self: Send + 'async_trait,
&'life0 self,
data: D
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
D: Into<Data> + Send + 'async_trait,
Self: Send + 'async_trait,
Put immutable data to the network.
#[must_use]fn get_idata<'life0, 'async_trait>(
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<Data, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<Data, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Get immutable data from the network. If the data exists locally in the cache then it will be immediately returned without making an actual network request.
#[must_use]fn del_unpub_idata<'life0, 'async_trait>(
&'life0 self,
name: XorName
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
name: XorName
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Delete unpublished immutable data from the network.
#[must_use]fn put_seq_mutable_data<'life0, 'async_trait>(
&'life0 self,
data: SeqData
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
data: SeqData
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Put sequenced mutable data to the network
#[must_use]fn get_unseq_mdata<'life0, 'async_trait>(
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<UnseqData, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<UnseqData, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Fetch unpublished mutable data from the network
#[must_use]fn get_seq_mdata_value<'life0, 'async_trait>(
&'life0 self,
name: XorName,
tag: u64,
key: Vec<u8>
) -> Pin<Box<dyn Future<Output = Result<SeqValue, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
name: XorName,
tag: u64,
key: Vec<u8>
) -> Pin<Box<dyn Future<Output = Result<SeqValue, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Fetch the value for a given key in a sequenced mutable data
#[must_use]fn get_unseq_mdata_value<'life0, 'async_trait>(
&'life0 self,
name: XorName,
tag: u64,
key: Vec<u8>
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
name: XorName,
tag: u64,
key: Vec<u8>
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Fetch the value for a given key in a sequenced mutable data
#[must_use]fn get_seq_mdata<'life0, 'async_trait>(
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<SeqData, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<SeqData, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Fetch sequenced mutable data from the network
#[must_use]fn mutate_seq_mdata_entries<'life0, 'async_trait>(
&'life0 self,
name: XorName,
tag: u64,
actions: SeqEntryActions
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
name: XorName,
tag: u64,
actions: SeqEntryActions
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Mutates sequenced MutableData
entries in bulk
#[must_use]fn mutate_unseq_mdata_entries<'life0, 'async_trait>(
&'life0 self,
name: XorName,
tag: u64,
actions: UnseqEntryActions
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
name: XorName,
tag: u64,
actions: UnseqEntryActions
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Mutates unsequenced MutableData
entries in bulk
#[must_use]fn get_seq_mdata_shell<'life0, 'async_trait>(
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<SeqData, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<SeqData, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Get a shell (bare bones) version of MutableData
from the network.
#[must_use]fn get_unseq_mdata_shell<'life0, 'async_trait>(
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<UnseqData, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<UnseqData, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Get a shell (bare bones) version of MutableData
from the network.
#[must_use]fn get_mdata_version<'life0, 'async_trait>(
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<u64, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<u64, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Get a current version of MutableData
from the network.
#[must_use]fn list_unseq_mdata_entries<'life0, 'async_trait>(
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<Vec<u8>, Vec<u8>>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<Vec<u8>, Vec<u8>>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Return a complete list of entries in MutableData
.
#[must_use]fn list_seq_mdata_entries<'life0, 'async_trait>(
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<Vec<u8>, SeqValue>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<Vec<u8>, SeqValue>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Return a complete list of entries in MutableData
.
#[must_use]fn list_mdata_keys<'life0, 'async_trait>(
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<BTreeSet<Vec<u8>>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<BTreeSet<Vec<u8>>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Return a list of keys in MutableData
stored on the network.
#[must_use]fn list_seq_mdata_values<'life0, 'async_trait>(
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<Vec<SeqValue>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<Vec<SeqValue>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Return a list of values in a Sequenced Mutable Data
#[must_use]fn list_mdata_user_permissions<'life0, 'async_trait>(
&'life0 self,
address: Address,
user: PublicKey
) -> Pin<Box<dyn Future<Output = Result<PermissionSet, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address,
user: PublicKey
) -> Pin<Box<dyn Future<Output = Result<PermissionSet, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Return the permissions set for a particular user
#[must_use]fn list_unseq_mdata_values<'life0, 'async_trait>(
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<u8>>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
name: XorName,
tag: u64
) -> Pin<Box<dyn Future<Output = Result<Vec<Vec<u8>>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Returns a list of values in an Unsequenced Mutable Data
#[must_use]fn put_adata<'life0, 'async_trait>(
&'life0 self,
data: Data
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
data: Data
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Put AppendOnly Data into the Network
#[must_use]fn get_adata<'life0, 'async_trait>(
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<Data, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<Data, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Get AppendOnly Data from the Network
#[must_use]fn get_adata_shell<'life0, 'async_trait>(
&'life0 self,
data_index: Index,
address: Address
) -> Pin<Box<dyn Future<Output = Result<Data, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
data_index: Index,
address: Address
) -> Pin<Box<dyn Future<Output = Result<Data, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Get AppendOnly Data Shell from the Network
#[must_use]fn get_adata_value<'life0, 'async_trait>(
&'life0 self,
address: Address,
key: Vec<u8>
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address,
key: Vec<u8>
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Fetch Value for the provided key from AppendOnly Data at {:?}
#[must_use]fn get_adata_range<'life0, 'async_trait>(
&'life0 self,
address: Address,
range: (Index, Index)
) -> Pin<Box<dyn Future<Output = Result<Vec<Entry>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address,
range: (Index, Index)
) -> Pin<Box<dyn Future<Output = Result<Vec<Entry>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Get a Set of Entries for the requested range from an AData.
#[must_use]fn get_adata_indices<'life0, 'async_trait>(
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<Indices, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<Indices, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Get latest indices from an AppendOnly Data.
#[must_use]fn get_adata_last_entry<'life0, 'async_trait>(
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<Entry, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<Entry, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Get the last data entry from an AppendOnly Data.
#[must_use]fn get_unpub_adata_permissions_at_index<'life0, 'async_trait>(
&'life0 self,
address: Address,
permissions_index: Index
) -> Pin<Box<dyn Future<Output = Result<UnpubPermissions, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address,
permissions_index: Index
) -> Pin<Box<dyn Future<Output = Result<UnpubPermissions, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Get permissions at the provided index.
#[must_use]fn get_pub_adata_permissions_at_index<'life0, 'async_trait>(
&'life0 self,
address: Address,
permissions_index: Index
) -> Pin<Box<dyn Future<Output = Result<PubPermissions, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address,
permissions_index: Index
) -> Pin<Box<dyn Future<Output = Result<PubPermissions, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Get permissions at the provided index.
#[must_use]fn get_pub_adata_user_permissions<'life0, 'async_trait>(
&'life0 self,
address: Address,
permissions_index: Index,
user: User
) -> Pin<Box<dyn Future<Output = Result<PubPermissionSet, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address,
permissions_index: Index,
user: User
) -> Pin<Box<dyn Future<Output = Result<PubPermissionSet, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Get permissions for a specified user(s).
#[must_use]fn get_unpub_adata_user_permissions<'life0, 'async_trait>(
&'life0 self,
address: Address,
permissions_index: Index,
public_key: PublicKey
) -> Pin<Box<dyn Future<Output = Result<UnpubPermissionSet, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address,
permissions_index: Index,
public_key: PublicKey
) -> Pin<Box<dyn Future<Output = Result<UnpubPermissionSet, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Get permissions for a specified user(s).
#[must_use]fn add_unpub_adata_permissions<'life0, 'async_trait>(
&'life0 self,
address: Address,
permissions: UnpubPermissions,
permissions_index: u64
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address,
permissions: UnpubPermissions,
permissions_index: u64
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Add AData Permissions
#[must_use]fn add_pub_adata_permissions<'life0, 'async_trait>(
&'life0 self,
address: Address,
permissions: PubPermissions,
permissions_index: u64
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address,
permissions: PubPermissions,
permissions_index: u64
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Add Pub AData Permissions
#[must_use]fn set_adata_owners<'life0, 'async_trait>(
&'life0 self,
address: Address,
owner: Owner,
owners_index: u64
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address,
owner: Owner,
owners_index: u64
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Set new Owners to AData
#[must_use]fn get_adata_owners<'life0, 'async_trait>(
&'life0 self,
address: Address,
owners_index: Index
) -> Pin<Box<dyn Future<Output = Result<Owner, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address,
owners_index: Index
) -> Pin<Box<dyn Future<Output = Result<Owner, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Set new Owners to AData
#[must_use]fn append_seq_adata<'life0, 'async_trait>(
&'life0 self,
append: AppendOperation,
index: u64
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
append: AppendOperation,
index: u64
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Append to Published Seq AppendOnly Data
#[must_use]fn append_unseq_adata<'life0, 'async_trait>(
&'life0 self,
append: AppendOperation
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
append: AppendOperation
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Append to Unpublished Unseq AppendOnly Data
#[must_use]fn list_mdata_permissions<'life0, 'async_trait>(
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<PublicKey, PermissionSet>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address
) -> Pin<Box<dyn Future<Output = Result<BTreeMap<PublicKey, PermissionSet>, CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Return a list of permissions in MutableData
stored on the network.
#[must_use]fn set_mdata_user_permissions<'life0, 'async_trait>(
&'life0 self,
address: Address,
user: PublicKey,
permissions: PermissionSet,
version: u64
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address,
user: PublicKey,
permissions: PermissionSet,
version: u64
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Updates or inserts a permissions set for a user
#[must_use]fn del_mdata_user_permissions<'life0, 'async_trait>(
&'life0 self,
address: Address,
user: PublicKey,
version: u64
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
&'life0 self,
address: Address,
user: PublicKey,
version: u64
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
Self: 'async_trait,
Updates or inserts a permissions set for a user
fn change_mdata_owner(
&self,
name: XorName,
tag: u64,
new_owner: PublicKey,
version: u64
) -> Result<(), CoreError>
&self,
name: XorName,
tag: u64,
new_owner: PublicKey,
version: u64
) -> Result<(), CoreError>
Sends an ownership transfer request.
#[must_use]fn test_set_balance<'life0, 'life1, 'async_trait>(
&'life0 self,
client_id: Option<&'life1 FullId>,
amount: Coins
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
&'life0 self,
client_id: Option<&'life1 FullId>,
amount: Coins
) -> Pin<Box<dyn Future<Output = Result<(), CoreError>> + 'async_trait + Send>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
Set the coin balance to a specific value for testing
Implementations on Foreign Types
impl Client for CoreClient
[src]
type Context = ()
fn full_id<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = SafeKey> + 'async_trait + Send>> where
'life0: 'async_trait,
CoreClient: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = SafeKey> + 'async_trait + Send>> where
'life0: 'async_trait,
CoreClient: 'async_trait,
fn owner_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + 'async_trait + Send>> where
'life0: 'async_trait,
CoreClient: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + 'async_trait + Send>> where
'life0: 'async_trait,
CoreClient: 'async_trait,
fn config<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Option<HashSet<SocketAddr, RandomState>>> + 'async_trait + Send>> where
'life0: 'async_trait,
CoreClient: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = Option<HashSet<SocketAddr, RandomState>>> + 'async_trait + Send>> where
'life0: 'async_trait,
CoreClient: 'async_trait,
fn inner(&self) -> Arc<Mutex<Inner>>
[src]
fn public_encryption_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + 'async_trait + Send>> where
'life0: 'async_trait,
CoreClient: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + 'async_trait + Send>> where
'life0: 'async_trait,
CoreClient: 'async_trait,
fn secret_encryption_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = SecretKey> + 'async_trait + Send>> where
'life0: 'async_trait,
CoreClient: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = SecretKey> + 'async_trait + Send>> where
'life0: 'async_trait,
CoreClient: 'async_trait,
fn secret_symmetric_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Key> + 'async_trait + Send>> where
'life0: 'async_trait,
CoreClient: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = Key> + 'async_trait + Send>> where
'life0: 'async_trait,
CoreClient: 'async_trait,
Implementors
impl Client for AppClient
[src]
type Context = AppContext
fn full_id<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = SafeKey> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = SafeKey> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn owner_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn config<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Option<BootstrapConfig>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = Option<BootstrapConfig>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn inner(&self) -> Arc<Mutex<Inner>>
[src]
fn public_encryption_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = PublicKey> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn secret_encryption_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = SecretKey> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = SecretKey> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn secret_symmetric_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Key> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = Key> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,