ApiZoneMetadataStore
final class ApiZoneMetadataStore implements ZoneMetadataStoreInterface (View source)
Zone metadata behind the PowerDNS API: metadata kinds through the metadata endpoints, and the kinds PowerDNS exposes as zone-object properties through a zone update.
Methods
The zone's metadata rows sorted by kind.
Replace the zone's whole metadata set.
Why this store cannot hold the kind (a MetadataDefinitions::REJECT_* code), or null.
Whether the store is known to take a version-gated kind: a SUPPORT_* value.
Set every value of one kind, leaving the other kinds alone.
Details
__construct(PowerdnsApiClient $apiClient)
No description
array
load(int $zoneId, string $zoneName)
The zone's metadata rows sorted by kind.
bool
replaceAll(int $zoneId, string $zoneName, array $rows, array $before)
Replace the zone's whole metadata set.
string|null
writeRejection(string $kind)
Why this store cannot hold the kind (a MetadataDefinitions::REJECT_* code), or null.
Server-managed kinds are refused before the store is asked.
string
kindSupport(array $definition, callable $capabilities)
Whether the store is known to take a version-gated kind: a SUPPORT_* value.
The capabilities are resolved only by a store whose support depends on the connected server, so a database store never triggers the version probe.
bool
replaceKind(int $zoneId, string $zoneName, string $kind, array $values, array $before)
Set every value of one kind, leaving the other kinds alone.