Delete a Route53 hosted zone by domain name, and PrivateZone status if provided.

    CLI Example::

        salt myminion boto3_route53.delete_hosted_zone_by_domain example.org.

def delete_hosted_zone_by_domain(Name, PrivateZone=None, region=None, key=None, keyid=None,
                                 profile=None):
    '''
    Delete a Route53 hosted zone by domain name, and PrivateZone status if provided.

    CLI Example::

        salt myminion boto3_route53.delete_hosted_zone_by_domain example.org.
    '''
    args = {'Name': Name, 'PrivateZone': PrivateZone,
            'region': region, 'key': key, 'keyid': keyid, 'profile': profile}
    # Be extra pedantic in the service of safety - if public/private is not provided and the domain
    # name resolves to both, fail and require them to declare it explicitly.
    zone = find_hosted_zone(**args)
    if not zone:
        log.error("Couldn't resolve domain name %s to a hosted zone ID.", Name)
        return False
    Id = zone[0]['HostedZone']['Id']
    return delete_hosted_zone(Id=Id, region=region, key=key, keyid=keyid, profile=profile)