pub struct CounterSigningSessionData {
pub preflight_request: PreflightRequest,
pub responses: Vec<(CounterSigningAgentState, Signature)>,
pub optional_responses: Vec<(CounterSigningAgentState, Signature)>,
}
Expand description
All the data required for a countersigning session.
Fields§
§preflight_request: PreflightRequest
The preflight request that was agreed upon by all parties for the session.
responses: Vec<(CounterSigningAgentState, Signature)>
All the required responses from each party.
optional_responses: Vec<(CounterSigningAgentState, Signature)>
Any optional responses if allowed for by the preflight request.
Implementations§
§impl CounterSigningSessionData
impl CounterSigningSessionData
pub fn try_from_responses(
responses: Vec<PreflightResponse>,
optional_responses: Vec<PreflightResponse>
) -> Result<CounterSigningSessionData, CounterSigningError>
pub fn try_from_responses( responses: Vec<PreflightResponse>, optional_responses: Vec<PreflightResponse> ) -> Result<CounterSigningSessionData, CounterSigningError>
Attempt to build session data from a vector of responses.
pub fn agent_state_for_agent(
&self,
agent: &HoloHash<Agent>
) -> Result<&CounterSigningAgentState, CounterSigningError>
pub fn agent_state_for_agent( &self, agent: &HoloHash<Agent> ) -> Result<&CounterSigningAgentState, CounterSigningError>
Get the agent state for a specific agent.
pub fn build_action_set(
&self,
entry_hash: HoloHash<Entry>,
weight: EntryRateWeight
) -> Result<Vec<Action>, CounterSigningError>
pub fn build_action_set( &self, entry_hash: HoloHash<Entry>, weight: EntryRateWeight ) -> Result<Vec<Action>, CounterSigningError>
Attempt to map countersigning session data to a set of actions. A given countersigning session always maps to the same ordered set of actions or an error. Note the actions are not signed as the intent is to build actions for other agents without their private keys.
pub fn try_new(
preflight_request: PreflightRequest,
responses: Vec<(CounterSigningAgentState, Signature)>,
optional_responses: Vec<(CounterSigningAgentState, Signature)>
) -> Result<CounterSigningSessionData, CounterSigningError>
pub fn try_new( preflight_request: PreflightRequest, responses: Vec<(CounterSigningAgentState, Signature)>, optional_responses: Vec<(CounterSigningAgentState, Signature)> ) -> Result<CounterSigningSessionData, CounterSigningError>
Fallible constructor.
pub fn check_integrity(&self) -> Result<(), CounterSigningError>
pub fn check_integrity(&self) -> Result<(), CounterSigningError>
Combines all integrity checks.
pub fn check_responses_indexes(&self) -> Result<(), CounterSigningError>
pub fn check_responses_indexes(&self) -> Result<(), CounterSigningError>
Check that the countersigning session data responses all have the correct indexes.
pub fn to_timestamp(&self) -> Timestamp
pub fn to_timestamp(&self) -> Timestamp
Construct a Timestamp from countersigning session data. Ostensibly used for the Action because the session itself covers a time range.
pub fn preflight_request(&self) -> &PreflightRequest
pub fn preflight_request(&self) -> &PreflightRequest
Accessor to the preflight request.
pub fn preflight_request_mut(&mut self) -> &mut PreflightRequest
pub fn preflight_request_mut(&mut self) -> &mut PreflightRequest
Mutable preflight_request accessor for testing.
pub fn signing_agents(&self) -> impl Iterator<Item = &HoloHash<Agent>>
pub fn signing_agents(&self) -> impl Iterator<Item = &HoloHash<Agent>>
Get all the agents signing for this session.
pub fn responses(&self) -> &Vec<(CounterSigningAgentState, Signature)>
pub fn responses(&self) -> &Vec<(CounterSigningAgentState, Signature)>
Accessor to responses.
pub fn responses_mut(
&mut self
) -> &mut Vec<(CounterSigningAgentState, Signature)>
pub fn responses_mut( &mut self ) -> &mut Vec<(CounterSigningAgentState, Signature)>
Mutable responses accessor for testing.
Trait Implementations§
§impl<'arbitrary> Arbitrary<'arbitrary> for CounterSigningSessionData
impl<'arbitrary> Arbitrary<'arbitrary> for CounterSigningSessionData
§fn arbitrary(
u: &mut Unstructured<'arbitrary>
) -> Result<CounterSigningSessionData, Error>
fn arbitrary( u: &mut Unstructured<'arbitrary> ) -> Result<CounterSigningSessionData, Error>
Self
from the given unstructured data. Read more§fn arbitrary_take_rest(
u: Unstructured<'arbitrary>
) -> Result<CounterSigningSessionData, Error>
fn arbitrary_take_rest( u: Unstructured<'arbitrary> ) -> Result<CounterSigningSessionData, Error>
Self
from the entirety of the given
unstructured data. Read more§impl Clone for CounterSigningSessionData
impl Clone for CounterSigningSessionData
§fn clone(&self) -> CounterSigningSessionData
fn clone(&self) -> CounterSigningSessionData
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Debug for CounterSigningSessionData
impl Debug for CounterSigningSessionData
§impl<'de> Deserialize<'de> for CounterSigningSessionData
impl<'de> Deserialize<'de> for CounterSigningSessionData
§fn deserialize<__D>(
__deserializer: __D
) -> Result<CounterSigningSessionData, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D
) -> Result<CounterSigningSessionData, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
§impl Hash for CounterSigningSessionData
impl Hash for CounterSigningSessionData
§impl PartialEq for CounterSigningSessionData
impl PartialEq for CounterSigningSessionData
§fn eq(&self, other: &CounterSigningSessionData) -> bool
fn eq(&self, other: &CounterSigningSessionData) -> bool
self
and other
values to be equal, and is used
by ==
.§impl Serialize for CounterSigningSessionData
impl Serialize for CounterSigningSessionData
§fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Eq for CounterSigningSessionData
impl StructuralEq for CounterSigningSessionData
impl StructuralPartialEq for CounterSigningSessionData
Auto Trait Implementations§
impl RefUnwindSafe for CounterSigningSessionData
impl Send for CounterSigningSessionData
impl Sync for CounterSigningSessionData
impl Unpin for CounterSigningSessionData
impl UnwindSafe for CounterSigningSessionData
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata ) -> <T as Pointee>::Metadata
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
§impl<T> CallHasher for T
impl<T> CallHasher for T
§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
§fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize( &self, deserializer: &mut D ) -> Result<With<T, W>, <D as Fallible>::Error>
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.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
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> 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>
§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.