Neuron®
The Neuron® is the basis for the creation of open and secure federated networks for smart societies.
Loading...
Searching...
No Matches
ClientSignatureInfo.cs
1using System;
3
5{
10 {
11 private readonly Property<string> bareJid;
12 private readonly Property<string> legalId;
13 private readonly Property<string> legalIdUri;
14 private readonly Property<string> legalIdQrCodeUri;
15 private readonly Property<string> role;
16 private readonly Property<byte[]> signature;
17 private readonly Property<DateTime> timestamp;
18 private readonly Property<bool> transferable;
19
26 {
27 string Domain = Contracts.Client.Domain;
28 if (string.IsNullOrEmpty(Domain))
29 Domain = "lab.tagroot.io";
30
31 this.bareJid = new Property<string>(nameof(this.BareJid), ClientSignature.BareJid, this);
32 this.signature = new Property<byte[]>(nameof(this.Signature), ClientSignature.DigitalSignature, this);
33 this.legalId = new Property<string>(nameof(this.LegalId), ClientSignature.LegalId, this);
34 this.legalIdUri = new Property<string>(nameof(this.LegalIdUri), ClientSignature.LegalIdUriString, this);
35 this.role = new Property<string>(nameof(this.Role), ClientSignature.Role, this);
36 this.timestamp = new Property<DateTime>(nameof(this.Timestamp), ClientSignature.Timestamp, this);
37 this.transferable = new Property<bool>(nameof(this.Transferable), ClientSignature.Transferable, this);
38 this.legalIdQrCodeUri = new Property<string>(nameof(this.LegalIdQrCodeUri), "https://" + Domain + "/QR/" + ClientSignature.LegalIdUriString, this);
39 }
40
44 public string BareJid
45 {
46 get => this.bareJid.Value;
47 set => this.bareJid.Value = value;
48 }
49
53 public string LegalId
54 {
55 get => this.legalId.Value;
56 set => this.legalId.Value = value;
57 }
58
62 public string LegalIdUri
63 {
64 get => this.legalIdUri.Value;
65 set => this.legalIdUri.Value = value;
66 }
67
71 public string LegalIdQrCodeUri
72 {
73 get => this.legalIdQrCodeUri.Value;
74 set => this.legalIdQrCodeUri.Value = value;
75 }
76
80 public string Role
81 {
82 get => this.role.Value;
83 set => this.role.Value = value;
84 }
85
89 public byte[] Signature
90 {
91 get => this.signature.Value;
92 set => this.signature.Value = value;
93 }
94
98 public DateTime Timestamp
99 {
100 get => this.timestamp.Value;
101 set => this.timestamp.Value = value;
102 }
103
107 public bool Transferable
108 {
109 get => this.transferable.Value;
110 set => this.transferable.Value = value;
111 }
112
113 }
114}
Represents a digital signature on a contract.
string Role
Role of the legal identity in the contract.
bool Transferable
If the signature is transferable to contracts based on the current contract as a template,...
string LegalIdUriString
ID of legal identity signing the contract, as an URI string.
string LegalId
ID of legal identity signing the contract.
string BareJid
Bare JID of the client used to generate the signature.
Adds support for legal identities, smart contracts and signatures to an XMPP client.
Class defining a role
Definition: Role.cs:7
Abstract base class of signatures
Definition: Signature.cs:10
byte[] DigitalSignature
Digital Signature
Definition: Signature.cs:27
DateTime Timestamp
Timestamp of signature.
Definition: Signature.cs:18
string Domain
Current Domain.
Definition: XmppClient.cs:3453
XmppClient Client
XMPP Client.