Struct ockam_entity::ProfileSync[][src]

pub struct ProfileSync { /* fields omitted */ }
Expand description

Synchronous worker wrapper around a Profile

Implementations

impl ProfileSync[src]

pub fn start_another(&self) -> Result<Self>[src]

Start another Vault at the same address.

impl ProfileSync[src]

pub fn create_with_worker(ctx: &Context, profile: &Address) -> Result<Self>[src]

Create and start a new Vault using Worker.

pub async fn create<P: ProfileTrait>(ctx: &Context, profile: P) -> Result<Self>[src]

Create a new Profile

Trait Implementations

impl Clone for ProfileSync[src]

fn clone(&self) -> Self[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl ProfileAuth for ProfileSync[src]

fn generate_authentication_proof(
    &mut self,
    channel_state: &[u8]
) -> Result<Vec<u8>>
[src]

Generate an authentication proof based on the given channel_state

fn verify_authentication_proof(
    &mut self,
    channel_state: &[u8],
    responder_contact_id: &ProfileIdentifier,
    proof: &[u8]
) -> Result<bool>
[src]

Verify an authentication proof based on the given channel state, proof and profile.

impl ProfileChanges for ProfileSync[src]

fn change_events(&self) -> Result<Vec<ProfileChangeEvent>>[src]

Return change history chain

fn update_no_verification(
    &mut self,
    change_event: ProfileChangeEvent
) -> Result<()>
[src]

Add a change event.

fn verify(&mut self) -> Result<bool>[src]

Verify the whole change event chain

impl ProfileContacts for ProfileSync[src]

fn contacts(&self) -> Result<ContactsDb>[src]

Return all known to this profile Contacts

fn to_contact(&self) -> Result<Contact>[src]

Convert [Profile] to Contact

fn serialize_to_contact(&self) -> Result<Vec<u8>>[src]

Serialize [Profile] to Contact in binary form for storing/transferring over the network

fn get_contact(&self, id: &ProfileIdentifier) -> Result<Option<Contact>>[src]

Return Contact with given ProfileIdentifier

fn verify_contact(&mut self, contact: &Contact) -> Result<bool>[src]

Verify cryptographically whole event chain. Also verify sequence correctness

fn verify_and_add_contact(&mut self, contact: Contact) -> Result<bool>[src]

Verify and add new Contact to [Profile]’s Contact list

fn verify_and_update_contact(
    &mut self,
    profile_id: &ProfileIdentifier,
    change_events: Vec<ProfileChangeEvent>
) -> Result<bool>
[src]

Verify and update known Contact with new ProfileChangeEvents

impl ProfileIdentity for ProfileSync[src]

fn identifier(&self) -> Result<ProfileIdentifier>[src]

Return unique [Profile] identifier, which is equal to sha256 of the root public key

impl ProfileSecrets for ProfileSync[src]

fn create_key(
    &mut self,
    key_attributes: KeyAttributes,
    attributes: Option<ProfileEventAttributes>
) -> Result<()>
[src]

Create new key. Key is uniquely identified by label in KeyAttributes

fn rotate_key(
    &mut self,
    key_attributes: KeyAttributes,
    attributes: Option<ProfileEventAttributes>
) -> Result<()>
[src]

Rotate existing key. Key is uniquely identified by label in KeyAttributes

fn get_secret_key(&mut self, key_attributes: &KeyAttributes) -> Result<Secret>[src]

Get Secret key. Key is uniquely identified by label in KeyAttributes

fn get_public_key(&self, key_attributes: &KeyAttributes) -> Result<PublicKey>[src]

Get PublicKey. Key is uniquely identified by label in KeyAttributes

fn get_root_secret(&mut self) -> Result<Secret>[src]

Get the root Secret

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T> Instrument for T[src]

fn instrument(self, span: Span) -> Instrumented<Self>[src]

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

fn in_current_span(self) -> Instrumented<Self>[src]

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

pub fn to_owned(&self) -> T[src]

Creates owned data from borrowed data, usually by cloning. Read more

pub fn clone_into(&self, target: &mut T)[src]

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

pub fn vzip(self) -> V