class ControllerServiceFactory (View source)

Builds the repositories and domain services controllers ask for, and memoizes the per-request shared instances (backend provider, permission cache). Owns the wiring so BaseController only exposes thin accessors.

Methods

__construct(PDO $db, ConfigurationManager $config, LoggerInterface $logger)

No description

userPreferenceService()

Shared instance so its per-request preference cache survives across consumers (pagination, timezone, and direct preference reads).

dnsBackendProvider()

Providers are stateless, so one shared instance serves the whole request.

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.

dnssecProvider()

No description

dnsDataService()

No description

userRepository()

No description

permissionService()

Shared instance so the per-user permission cache spans the whole request

apiPermissionService()

The permission rules that need group or template lookups beyond PermissionService

userManagementService()

The user service the API uses, over the request's shared permission cache

zoneManagementService(PdnsCapabilities|null $capabilities = null)

No description

auditService()

No description

zoneEditService()

No description

repositoryFactory(DnsBackendProvider|null $backendProvider = null)

No description

Details

__construct(PDO $db, ConfigurationManager $config, LoggerInterface $logger)

No description

Parameters

PDO $db
ConfigurationManager $config
LoggerInterface $logger

UserPreferenceService userPreferenceService()

Shared instance so its per-request preference cache survives across consumers (pagination, timezone, and direct preference reads).

Return Value

UserPreferenceService

UserTimezoneService userTimezoneService()

No description

Return Value

UserTimezoneService

PaginationService paginationService()

No description

Return Value

PaginationService

DnsBackendProvider dnsBackendProvider()

Providers are stateless, so one shared instance serves the whole request.

Return Value

DnsBackendProvider

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.

Return Value

PowerdnsApiClient|null

SOARecordManagerInterface soaRecordManager()

No description

DnssecProvider dnssecProvider()

No description

Return Value

DnssecProvider

DnsDataService dnsDataService()

No description

Return Value

DnsDataService

ZoneRepositoryInterface zoneRepository()

No description

DomainRepositoryInterface domainRepository()

No description

RecordRepositoryInterface recordRepository()

No description

UserRepository userRepository()

No description

Return Value

UserRepository

PermissionService permissionService()

Shared instance so the per-user permission cache spans the whole request

Return Value

PermissionService

ApiPermissionService apiPermissionService()

The permission rules that need group or template lookups beyond PermissionService

Return Value

ApiPermissionService

UserManagementService userManagementService()

The user service the API uses, over the request's shared permission cache

Return Value

UserManagementService

UserGroupRepositoryInterface userGroupRepository()

No description

ZoneManagementService zoneManagementService(PdnsCapabilities|null $capabilities = null)

No description

Parameters

PdnsCapabilities|null $capabilities

Return Value

ZoneManagementService

AuditService auditService()

No description

Return Value

AuditService

ZoneMetadataService zoneMetadataService()

No description

Return Value

ZoneMetadataService

ZoneSigningService zoneSigningService()

No description

Return Value

ZoneSigningService

ZoneOwnershipModeService zoneOwnershipModeService()

No description

ZoneCreateOwnershipResolver zoneCreateOwnershipResolver()

No description

ZoneOwnershipFormResolver zoneOwnershipFormResolver()

No description

UserGroupMemberRepositoryInterface userGroupMemberRepository()

No description

DbPermissionTemplateRepository permissionTemplateRepository()

No description

PermissionTemplateWriteService permissionTemplateWriteService()

No description

DashboardStatsService dashboardStatsService()

No description

Return Value

DashboardStatsService

ZoneListPermissionService zoneListPermissionService()

No description

ZoneGroupRepositoryInterface zoneGroupRepository()

No description

ReverseTtlResolver reverseTtlResolver()

No description

Return Value

ReverseTtlResolver

RecordManagerInterface recordManager()

No description

Return Value

RecordManagerInterface

RecordCommentService recordCommentService()

No description

Return Value

RecordCommentService

ZoneEditService zoneEditService()

No description

Return Value

ZoneEditService

RecordManagerService recordManagerService()

No description

Return Value

RecordManagerService

RecordAddService recordAddService()

No description

Return Value

RecordAddService

ReverseRecordCreator reverseRecordCreator()

No description

Return Value

ReverseRecordCreator

BatchReverseRecordCreator batchReverseRecordCreator()

No description

DomainManagerInterface domainManager()

No description

Return Value

DomainManagerInterface

CatalogZoneService catalogZoneService()

No description

Return Value

CatalogZoneService

RepositoryFactory repositoryFactory(DnsBackendProvider|null $backendProvider = null)

No description

Parameters

DnsBackendProvider|null $backendProvider

Return Value

RepositoryFactory