Skip to content
Closed
Prev Previous commit
Next Next commit
Implement account provider registration in RegistrationContext
Signed-off-by: Côme Chilliet <[email protected]>
  • Loading branch information
come-nc committed Oct 3, 2023
commit a24a3d8545b8e0320e441a0b702a03f2c659961c
22 changes: 22 additions & 0 deletions lib/private/AppFramework/Bootstrap/RegistrationContext.php
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@
use OCP\Notification\INotifier;
use OCP\Profile\ILinkAction;
use OCP\Search\IProvider;
use OCP\Settings\IAccountWarningsProvider;
use OCP\Share\IPublicShareTemplateProvider;
use OCP\Support\CrashReport\IReporter;
use OCP\UserMigration\IMigrator as IUserMigrator;
Expand Down Expand Up @@ -146,6 +147,9 @@ class RegistrationContext {
/** @var ServiceRegistration<IPublicShareTemplateProvider>[] */
private $publicShareTemplateProviders = [];

/** @var ServiceRegistration<IAccountWarningsProvider>[] */
private array $accountWarningsProviders = [];

/** @var LoggerInterface */
private $logger;

Expand Down Expand Up @@ -372,6 +376,13 @@ public function registerPublicShareTemplateProvider(string $class): void {
$class
);
}

public function registerAccountWarningsProvider(string $class): void {
$this->context->registerAccountWarningsProvider(
$this->appId,
$class
);
}
};
}

Expand Down Expand Up @@ -523,6 +534,10 @@ public function registerPublicShareTemplateProvider(string $appId, string $class
$this->publicShareTemplateProviders[] = new ServiceRegistration($appId, $class);
}

public function registerAccountWarningsProvider(string $appId, string $class): void {
$this->accountWarningsProviders[] = new ServiceRegistration($appId, $class);
}

/**
* @param App[] $apps
*/
Expand Down Expand Up @@ -828,4 +843,11 @@ public function getSensitiveMethods(): array {
public function getPublicShareTemplateProviders(): array {
return $this->publicShareTemplateProviders;
}

/**
* @return ServiceRegistration<IAccountWarningsProvider>[]
*/
public function getAccountWarningsProviders(): array {
return $this->accountWarningsProviders;
}
}