pub struct SessionResult {
pub token: RequestorToken,
pub status: Status,
pub session_type: SessionType,
pub proof_status: Option<ProofStatus>,
pub disclosed: Option<Vec<Vec<DisclosedAttribute>>>,
pub error: Option<RemoteError>,
pub next_session: Option<RequestorToken>,
}Expand description
Fields§
§token: RequestorToken§status: Status§session_type: SessionType§proof_status: Option<ProofStatus>§disclosed: Option<Vec<Vec<DisclosedAttribute>>>§error: Option<RemoteError>§next_session: Option<RequestorToken>Implementations§
Source§impl SessionResult
impl SessionResult
Sourcefn mock_disclosure(disclosed: Vec<Vec<DisclosedAttribute>>) -> SessionResult
fn mock_disclosure(disclosed: Vec<Vec<DisclosedAttribute>>) -> SessionResult
Creates a mock session result containing the specified disclosed attributes
Source§impl SessionResult
impl SessionResult
Sourcepub fn sign(
self,
creds: &Credentials<SigningKey>,
validity: Duration,
) -> Result<JWT>
pub fn sign( self, creds: &Credentials<SigningKey>, validity: Duration, ) -> Result<JWT>
Signs this session result using the provided yivi server credentials.
Sourcepub fn open_signed(
jwt: &JWT,
server_credentials: &Credentials<VerifyingKey>,
) -> Result<Self>
pub fn open_signed( jwt: &JWT, server_credentials: &Credentials<VerifyingKey>, ) -> Result<Self>
Opens the given signed SessionResult.
Sourcefn validate_except_disclosed(&self) -> Result<()>
fn validate_except_disclosed(&self) -> Result<()>
Verifies that this SessionResult is valid ignoring the Self::disclosed field.
Sourcepub fn validate_and_extract_raw_singles(
&self,
) -> Result<impl Iterator<Item = Result<(&AttributeTypeIdentifier, &str)>>>
pub fn validate_and_extract_raw_singles( &self, ) -> Result<impl Iterator<Item = Result<(&AttributeTypeIdentifier, &str)>>>
Verifyies that this SessionResult is valid, and for the first attribute in each inner conjunction
returns the AttributeTypeIdentifier and raw value.
Trait Implementations§
Source§impl Clone for SessionResult
impl Clone for SessionResult
Source§fn clone(&self) -> SessionResult
fn clone(&self) -> SessionResult
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SessionResult
impl Debug for SessionResult
Source§impl<'de> Deserialize<'de> for SessionResult
impl<'de> Deserialize<'de> for SessionResult
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for SessionResult
impl PartialEq for SessionResult
Source§impl Serialize for SessionResult
impl Serialize for SessionResult
impl Eq for SessionResult
impl StructuralPartialEq for SessionResult
Auto Trait Implementations§
impl Freeze for SessionResult
impl RefUnwindSafe for SessionResult
impl Send for SessionResult
impl Sync for SessionResult
impl Unpin for SessionResult
impl UnsafeUnpin for SessionResult
impl UnwindSafe for SessionResult
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more