Struct ockam_entity::Entity[][src]

pub struct Entity { /* fields omitted */ }

Implementations

impl Entity[src]

pub async fn create(node_ctx: &Context) -> Result<Entity>[src]

pub async fn secure_channel_listen_on_address<A: Into<Address>, T: TrustPolicy>(
    &mut self,
    address: A,
    trust_policy: T
) -> Result<()>
[src]

pub async fn create_secure_channel_listener<T: TrustPolicy>(
    &mut self,
    secure_channel_address: &str,
    trust_policy: T
) -> Result<()>
[src]

pub async fn create_secure_channel<R: Into<Route>, T: TrustPolicy>(
    &mut self,
    route: R,
    trust_policy: T
) -> Result<Address>
[src]

pub fn list_secure_channels(&self) -> Result<Vec<(&Address, &Route)>>[src]

Trait Implementations

impl ProfileAdd for Entity[src]

fn add_profile(&mut self, profile: ProfileSync) -> Result<()>[src]

impl ProfileAuth for Entity[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 Entity[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 Entity[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 Entity[src]

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

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

impl ProfileRemove for Entity[src]

fn remove_profile(&mut self, profile_id: &ProfileIdentifier) -> Result<()>[src]

impl ProfileRetrieve for Entity[src]

fn profile(
    &self,
    profile_identifier: &ProfileIdentifier
) -> Option<&ProfileSync>
[src]

fn profile_mut(
    &mut self,
    profile_identifier: &ProfileIdentifier
) -> Option<&mut ProfileSync>
[src]

impl ProfileSecrets for Entity[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

impl !RefUnwindSafe for Entity

impl Send for Entity

impl Sync for Entity

impl Unpin for Entity

impl !UnwindSafe for Entity

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, 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