BackendServices
final class BackendServices (View source)
The connection to the DNS backend: the provider, its API client, and the repositories and record managers that read and write through it. Every memoized instance is shared for the request so read caches are not split.
Constants
| private ZONE_CACHE_FLUSH_TIMEOUT |
|
Methods
No description
The request's unit of work over the same connection the repositories write through.
Providers are stateless, so one shared instance serves the whole request.
The provider's API client, or null outside API backend mode. Sharing it keeps one set of per-request read caches for the whole request.
The connected PowerDNS version, from the session cache or one fetch when the cache is empty or expired; unknown when no PowerDNS API is configured.
Null in API backend mode, where PowerDNS flushes on its own writes, and when no PowerDNS API is configured to send the flush to.
No description
No description
No description
No description
No description
No description
No description
No description
The forced zone-list sync for API-backed installs; the 300s interval is the same floor the automatic sync uses.
Details
__construct(PDO $db, ConfigurationInterface $config, LoggerInterface $logger, ActorInterface $actor, SessionInterface $session)
No description
TransactionInterface
transaction()
The request's unit of work over the same connection the repositories write through.
DnsBackendProviderInterface
dnsBackendProvider()
Providers are stateless, so one shared instance serves the whole request.
PowerdnsApiClient|null
apiClient()
The provider's API client, or null outside API backend mode. Sharing it keeps one set of per-request read caches for the whole request.
PdnsCapabilities
pdnsCapabilities()
The connected PowerDNS version, from the session cache or one fetch when the cache is empty or expired; unknown when no PowerDNS API is configured.
ZoneCacheFlusherInterface|null
zoneCacheFlusher()
Null in API backend mode, where PowerDNS flushes on its own writes, and when no PowerDNS API is configured to send the flush to.
RepositoryFactory
repositoryFactory(DnsBackendProviderInterface|null $backendProvider = null)
No description
ZoneRepositoryInterface
zoneRepository()
No description
DomainRepositoryInterface
domainRepository()
No description
RecordRepositoryInterface
recordRepository()
No description
SOARecordManagerInterface
soaRecordManager()
No description
DnssecProviderInterface
dnssecProvider()
No description
DnsDataService
dnsDataService()
No description
ZoneMetadataStoreInterface
zoneMetadataStore()
No description
ConsistencyCheckerInterface
consistencyChecker(ZoneChangeRequestRepositoryInterface|null $changeRequests = null)
No description
PowerdnsStatusService
powerdnsStatusService()
No description
ZoneSyncService
zoneSyncService()
The forced zone-list sync for API-backed installs; the 300s interval is the same floor the automatic sync uses.