pub trait ElectronicSignatureProvider: Send + Sync {
// Required methods
fn kind(&self) -> SignatureProviderKind;
fn request_signature<'life0, 'async_trait>(
&'life0 self,
request: SignatureRequest,
) -> Pin<Box<dyn Future<Output = Result<SignatureRequestAck, SignatureProviderError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait;
fn fetch_signature<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
provider_reference: &'life1 str,
expected_document_hash: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<QualifiedSignature, SignatureProviderError>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait;
}Expand description
Port hexagonal vers un prestataire de signature électronique qualifiée.
Required Methods§
fn kind(&self) -> SignatureProviderKind
Sourcefn request_signature<'life0, 'async_trait>(
&'life0 self,
request: SignatureRequest,
) -> Pin<Box<dyn Future<Output = Result<SignatureRequestAck, SignatureProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn request_signature<'life0, 'async_trait>(
&'life0 self,
request: SignatureRequest,
) -> Pin<Box<dyn Future<Output = Result<SignatureRequestAck, SignatureProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Envoie le document au prestataire. Le condensat est calculé et renvoyé AVANT l’appel réseau (AC @security).
Sourcefn fetch_signature<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
provider_reference: &'life1 str,
expected_document_hash: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<QualifiedSignature, SignatureProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn fetch_signature<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
provider_reference: &'life1 str,
expected_document_hash: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<QualifiedSignature, SignatureProviderError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Interroge le prestataire pour une référence donnée.
expected_document_hash est celui rendu par request_signature : le
résultat est rejeté (HashMismatch) si le prestataire ne confirme pas
le même condensat.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".