mirror of
https://github.com/verdigado/organization_folders.git
synced 2024-12-06 11:22:41 +01:00
added not found errors to be used by organization providers
This commit is contained in:
parent
38b1406d40
commit
2521a35b2a
6 changed files with 46 additions and 2 deletions
47
lib/OrganizationProvider/OrganizationProviderManager.php
Normal file
47
lib/OrganizationProvider/OrganizationProviderManager.php
Normal file
|
@ -0,0 +1,47 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace OCA\OrganizationFolders\OrganizationProvider;
|
||||
|
||||
use OCP\EventDispatcher\IEventDispatcher;
|
||||
use OCP\Server;
|
||||
|
||||
use OCA\OrganizationFolders\Events\RegisterOrganizationProviderEvent;
|
||||
|
||||
class OrganizationProviderManager {
|
||||
private array $organizationProviders = [];
|
||||
|
||||
public function __construct(
|
||||
IEventDispatcher $dispatcher,
|
||||
) {
|
||||
$event = new RegisterOrganizationProviderEvent($this);
|
||||
$dispatcher->dispatchTyped($event);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return OrganizationProvider[]
|
||||
*/
|
||||
public function getOrganizationProviders(): array {
|
||||
return $this->organizationProviders;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return bool
|
||||
*/
|
||||
public function hasOrganizationProvider($id): bool {
|
||||
return array_key_exists($id, $this->organizationProviders);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return OrganizationProvider
|
||||
*/
|
||||
public function getOrganizationProvider($id): ?OrganizationProvider {
|
||||
return $this->organizationProviders[$id];
|
||||
}
|
||||
|
||||
public function registerOrganizationProvider(OrganizationProvider $organizationProvider): self {
|
||||
$this->organizationProviders[$organizationProvider->getId()] = $organizationProvider;
|
||||
return $this;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue