public static async Task <RecordSet> GetOrDefaultAsync(this IRecordSetsOperations operations, string resourceGroupName, string zoneName, string relativeRecordSetName, RecordType recordType) { try { return(await operations.GetAsync(resourceGroupName, zoneName, relativeRecordSetName, RecordType.TXT)); } catch { return(null); } }
private async Task <RecordSet> GetOrCreateRecordSetAsync(IRecordSetsOperations recordSetClient, RecordType type, string resourceGroup, string zoneName, string name, string value) { RecordSet set = null !; try { set = await recordSetClient.GetAsync(resourceGroup, zoneName, name, type); } catch (CloudException e) { if (e.Response.StatusCode != System.Net.HttpStatusCode.NotFound) { throw; } } if (set == null) { set = new RecordSet(name: name, tTL: 1); switch (type) { case RecordType.TXT: set.TxtRecords = new List <TxtRecord>(); break; default: throw new Exception("Record type is unsupported: " + type.ToString()); } } switch (type) { case RecordType.TXT: set.TxtRecords.Add(new TxtRecord(new[] { value })); break; default: throw new Exception("Record type is unsupported: " + type.ToString()); } return(set); }
/// <summary> /// Gets a record set. /// </summary> /// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='resourceGroupName'> /// The name of the resource group. /// </param> /// <param name='zoneName'> /// The name of the DNS zone (without a terminating dot). /// </param> /// <param name='relativeRecordSetName'> /// The name of the record set, relative to the name of the zone. /// </param> /// <param name='recordType'> /// The type of DNS record in this record set. Possible values include: 'A', /// 'AAAA', 'CAA', 'CNAME', 'MX', 'NS', 'PTR', 'SOA', 'SRV', 'TXT' /// </param> public static RecordSet Get(this IRecordSetsOperations operations, string resourceGroupName, string zoneName, string relativeRecordSetName, RecordType recordType) { return(operations.GetAsync(resourceGroupName, zoneName, relativeRecordSetName, recordType).GetAwaiter().GetResult()); }