public override void ExecuteCmdlet()
{
string zoneName = null;
string resourceGroupName = null;
if (this.ParameterSetName == "Fields")
{
zoneName = this.ZoneName;
resourceGroupName = this.ResourceGroupName;
}
else
{
zoneName = this.Zone.Name;
resourceGroupName = this.Zone.ResourceGroupName;
}
if (zoneName != null && zoneName.EndsWith("."))
{
zoneName = zoneName.TrimEnd('.');
this.WriteWarning(string.Format("Modifying zone name to remove terminating '.'. Zone name used is \"{0}\".", zoneName));
}
if (this.Name != null)
{
if (this.RecordType == null)
{
throw new PSArgumentException("If you specify the Name parameter you must also specify the RecordType parameter.");
}
DnsRecordSet result = this.DnsClient.GetDnsRecordSet(this.Name, zoneName, resourceGroupName, this.RecordType.Value);
this.WriteObject(result);
}
else
{
List<DnsRecordSet> result = null;
if (this.RecordType == null)
{
result = this.DnsClient.ListRecordSets(zoneName, resourceGroupName);
}
else
{
result = this.DnsClient.ListRecordSets(zoneName, resourceGroupName, this.RecordType.Value);
}
foreach (var r in result)
{
this.WriteObject(r);
}
}
}
}