provider/pdns.go
func (c *PDNSAPIClient) ListZone(zoneID string) (zone pgo.Zone, resp *http.Response, err error) {
	for i := 0; i < retryLimit; i++ {
		zone, resp, err = c.client.ZonesApi.ListZone(c.authCtx, defaultServerID, zoneID)
		if err != nil {
			log.Debugf("Unable to fetch zone %v", err)
			log.Debugf("Retrying ListZone() ... %d", i)
			time.Sleep(retryAfterTime * (1 << uint(i)))
			continue

		}
		return zone, resp, err
	}

	log.Errorf("Unable to list zone. %v", err)
	return zone, resp, err

}
func (c *PDNSAPIClient) ListZone(zoneID string) (zone pgo.Zone, resp *http.Response, err error) {
	for i := 0; i < retryLimit; i++ {
		zone, resp, err = c.client.ZonesApi.ListZone(c.authCtx, defaultServerID, zoneID)
		if err != nil {
			log.Debugf("Unable to fetch zone %v", err)
			log.Debugf("Retrying ListZone() ... %d", i)
			time.Sleep(retryAfterTime * (1 << uint(i)))
			continue

		}
		return zone, resp, err
	}

	log.Errorf("Unable to list zone. %v", err)
	return zone, resp, err

}
func ( c * PDNSAPIClient ) ListZone ( zoneID string ) ( zone pgo . Zone , resp * http . Response , err error ) { for i := 0 ; i < retryLimit ; i ++ { zone , resp , err = c . client . ZonesApi . ListZone ( c . authCtx , defaultServerID , zoneID ) if err != nil { log . Debugf ( " " , err ) log . Debugf ( " " , i ) time . Sleep ( retryAfterTime * ( 1 << uint ( i ) ) ) continue } return zone , resp , err } log . Errorf ( " " , err ) return zone , resp , err }
// ListZone : Method returns the details of a specific zone from PowerDNS
// ref: https://doc.powerdns.com/authoritative/http-api/zone.html#get--servers-server_id-zones-zone_id
ListZone : Method returns the details of a specific zone from PowerDNS ref : https : // doc . powerdns . com / authoritative / http - api / zone . html#get -- servers - server_id - zones - zone_id