Neuron®
The Neuron® is the basis for the creation of open and secure federated networks for smart societies.
Loading...
Searching...
No Matches
AffiliationItem.cs
1using System;
3
5{
6 public class AffiliationItem
7 {
8 private Affiliation affiliation;
9
11 {
12 this.affiliation = Affiliation;
13 }
14
15 public Affiliation Affiliation => this.affiliation;
16 public string Jid => this.affiliation.Jid;
17
18 public static int ToIndex(AffiliationStatus Status)
19 {
20 switch (Status)
21 {
22 case AffiliationStatus.owner: return 0;
23 case AffiliationStatus.publisher: return 1;
24 case AffiliationStatus.publishOnly: return 2;
25 case AffiliationStatus.member: return 3;
26 case AffiliationStatus.none: return 4;
27 case AffiliationStatus.outcast: return 5;
28 default: return -1;
29 }
30 }
31
32 public static AffiliationStatus FromIndex(int Index)
33 {
34 switch (Index)
35 {
36 case 0: return AffiliationStatus.owner;
37 case 1: return AffiliationStatus.publisher;
38 case 2: return AffiliationStatus.publishOnly;
39 case 3: return AffiliationStatus.member;
40 case 4: return AffiliationStatus.none;
41 case 5: return AffiliationStatus.outcast;
42 default: throw new ArgumentException("Invalid affiliation.", nameof(Index));
43 }
44 }
45
46 public int AffiliationIndex
47 {
48 get => ToIndex(this.affiliation.Status);
49 set
50 {
51 AffiliationStatus Status = FromIndex(value);
52 this.affiliation = new Affiliation(this.affiliation.Node, this.affiliation.Jid, Status);
53 }
54 }
55 }
56}
Contains information about a user affiliation.
Definition: Affiliation.cs:7
string Jid
JID receiving notifications.
Definition: Affiliation.cs:33
AffiliationStatus Status
User affiliation.
Definition: Affiliation.cs:38
AffiliationStatus
User affiliation