Exemplo n.º 1
0
        static void ShowDescribeDomainRecordsList()
        {
            //Init Api
            AliyunDnsApi request = new AliyunDnsApi();

            //Init DescribeDomainRecords object
            IDescribeDomainRecords describeDomainRecords = new IDescribeDomainRecords()
            {
                DomainName = "quarkbook.com",
            };

            //Get and out result
            DomainRecords domain = new DomainRecords();

            domain = request.Request <DescribeDomainRecordsResult>(describeDomainRecords).DomainRecords; //泛型参数为Result实体模型

            if (domain != null && domain.Record.Count > 0)
            {
                foreach (var item in domain.Record)
                {
                    Console.WriteLine(item.RecordId + "\t" + item.DomainName + "\t" + item.Status + "\t" + item.RR + "\t" + item.Value);
                }
            }
            else
            {
                Console.WriteLine("请求失败!");
            }
            Console.WriteLine();
        }
Exemplo n.º 2
0
 public void AddRecord(ResourceRecord rec)
 {
     lock (DomainRecords)
     {
         DomainRecords.Add(rec);
     }
 }
Exemplo n.º 3
0
 public ResourceRecord Get(DomainName name, DnsType type, DnsClass cls)
 {
     lock (DomainRecords)
     {
         return(DomainRecords.First(r =>
                                    r.Name == name &&
                                    r.Type == type &&
                                    r.Class == cls));
     }
 }
Exemplo n.º 4
0
 public bool Contains(DomainName name, DnsType type, DnsClass cls)
 {
     lock (DomainRecords)
     {
         return
             (DomainRecords.First(r =>
                                  r.Name == name &&
                                  r.Type == type &&
                                  r.Class == cls) != null);
     }
 }
Exemplo n.º 5
0
 public Task RemoveExpiredAsync()
 {
     return(Task.Run(() =>
     {
         lock (DomainRecords)
         {
             var remove = new List <ResourceRecord>();
             foreach (var record in DomainRecords.Where(record => record.IsExpired()))
             {
                 remove.Add(record);
             }
             foreach (var record in remove)
             {
                 DomainRecords.Remove(record);
             }
         }
     }));
 }