Neuron®
The Neuron® is the basis for the creation of open and secure federated networks for smart societies.
Loading...
Searching...
No Matches
ResourceAddressRecord.cs
1using System.IO;
2using System.Net;
6
8{
12 public abstract class ResourceAddressRecord : ResourceRecord
13 {
14 private IPAddress address;
15
20 : base()
21 {
22 this.address = null;
23 }
24
33 public ResourceAddressRecord(string Name, TYPE Type, CLASS Class, uint Ttl, Stream Data)
34 : base(Name, Type, Class, Ttl)
35 {
36 int c = this.AddressSize;
37 byte[] Bin = new byte[c];
38 Data.ReadAll(Bin, 0, c);
39
40 this.address = new IPAddress(Bin);
41 }
42
46 protected abstract int AddressSize
47 {
48 get;
49 }
50
54 [IgnoreMember]
55 public IPAddress Address
56 {
57 get => this.address;
58 set => this.address = value;
59 }
60
64 [DefaultValueNull]
65 public byte[] AddressBytes
66 {
67 get => this.address?.GetAddressBytes();
68 set => this.address = value is null ? null : new IPAddress(value);
69 }
70
72 public override string ToString()
73 {
74 return base.ToString() + "\t" + this.address?.ToString();
75 }
76 }
77}
Abstract base class for Resource Address Records.
ResourceAddressRecord()
Abstract base class for Resource Address Records.
ResourceAddressRecord(string Name, TYPE Type, CLASS Class, uint Ttl, Stream Data)
Abstract base class for Resource Address Records.
Abstract base class for a resource record.
CLASS
TYPE fields are used in resource records.
Definition: CLASS.cs:7
TYPE
TYPE fields are used in resource records.
Definition: TYPE.cs:7