forked from PeterWaher/IoTGateway
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEnumerations.cs
More file actions
97 lines (83 loc) · 2.54 KB
/
Enumerations.cs
File metadata and controls
97 lines (83 loc) · 2.54 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
using System;
using System.Collections.Generic;
using System.Text;
namespace Waher.Networking.XMPP.Contracts
{
/// <summary>
/// Recognized contract states
/// </summary>
public enum ContractState
{
/// <summary>
/// The contract has been proposed as a new contract.
/// It needs to be revied and approved by the Trust Provider before it can be used as a template or be signed.
/// </summary>
Proposed,
/// <summary>
/// The contract has been deemed incomplete, inconsistent, or otherwise faulty.
/// A rejected contract cannot be used as a template or be signed.
/// A rejected contract can be updated by the creator, and thus be put in a Proposed state again.
/// </summary>
Rejected,
/// <summary>
/// The contract has been reviewed and approved. It is still not signed, but can act as a template for other contracts.
/// </summary>
Approved,
/// <summary>
/// The contract is being signed. Not all reuired roles have signed however, and the contract is not legally binding.
/// </summary>
BeingSigned,
/// <summary>
/// The contract has been signed by all required parties, and is legally binding.
/// </summary>
Signed,
/// <summary>
/// The contract has been explicitly obsoleted by its owner, or by the Trust Provider.
/// </summary>
Obsoleted,
/// <summary>
/// The contract has been explicitly deleted by its owner, or by the Trust Provider.
/// </summary>
Deleted
}
/// <summary>
/// Visibility types for contracts.
/// </summary>
public enum ContractVisibility
{
/// <summary>
/// Contract is only accessible to the creator, and any parts in the contract.
/// </summary>
CreatorAndParts,
/// <summary>
/// Contract is accessible to the creator of the contract, any parts in the contract, and any account on the Trust Provider server domain.
/// </summary>
DomainAndParts,
/// <summary>
/// Contract is accessible by everyone requesting it. It is not searchable.
/// </summary>
Public,
/// <summary>
/// Contract is accessible by everyone requesting it. It is also searchable.
/// </summary>
PublicSearchable
}
/// <summary>
/// Options on what keys to use when signing data.
/// </summary>
public enum SignWith
{
/// <summary>
/// Use current endpoint keys.
/// </summary>
CurrentKeys,
/// <summary>
/// Use keys from latest approved Legal Identity
/// </summary>
LatestApprovedId,
/// <summary>
/// Use keys from latest approved Legal Identity, if any, or current endpoint keys if not.
/// </summary>
LatestApprovedIdOrCurrentKeys
}
}