pub struct SignedGraph {
pub graph_uri: String,
pub triples: Vec<RdfTriple>,
pub issuer: Did,
pub issued_at: DateTime<Utc>,
pub proof: Proof,
pub expires_at: Option<DateTime<Utc>>,
}Expand description
A signed RDF graph
Fields§
§graph_uri: StringGraph URI (named graph identifier)
triples: Vec<RdfTriple>RDF triples in the graph
issuer: DidIssuer DID
issued_at: DateTime<Utc>Issuance timestamp
proof: ProofGraph signature
expires_at: Option<DateTime<Utc>>Optional expiration
Implementations§
Source§impl SignedGraph
impl SignedGraph
Sourcepub fn new(graph_uri: &str, triples: Vec<RdfTriple>, issuer: Did) -> Self
pub fn new(graph_uri: &str, triples: Vec<RdfTriple>, issuer: Did) -> Self
Create a new signed graph (without signing yet)
Sourcepub fn sign(self, signer: &Ed25519Signer) -> DidResult<Self>
pub fn sign(self, signer: &Ed25519Signer) -> DidResult<Self>
Sign the graph with Ed25519
Sourcepub async fn verify(
&self,
resolver: &DidResolver,
) -> DidResult<VerificationResult>
pub async fn verify( &self, resolver: &DidResolver, ) -> DidResult<VerificationResult>
Verify the graph signature
Sourcepub fn is_expired(&self) -> bool
pub fn is_expired(&self) -> bool
Check if the graph signature is expired
Sourcepub fn with_expiration(self, expires: DateTime<Utc>) -> Self
pub fn with_expiration(self, expires: DateTime<Utc>) -> Self
Set expiration
Trait Implementations§
Source§impl Clone for SignedGraph
impl Clone for SignedGraph
Source§fn clone(&self) -> SignedGraph
fn clone(&self) -> SignedGraph
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 SignedGraph
impl Debug for SignedGraph
Source§impl<'de> Deserialize<'de> for SignedGraph
impl<'de> Deserialize<'de> for SignedGraph
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
Auto Trait Implementations§
impl Freeze for SignedGraph
impl RefUnwindSafe for SignedGraph
impl Send for SignedGraph
impl Sync for SignedGraph
impl Unpin for SignedGraph
impl UnwindSafe for SignedGraph
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<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