0
0
Fork 0
mirror of https://github.com/verdigado/organization_folders.git synced 2024-12-06 11:22:41 +01:00

Added security classes and draft version of ResourceVoter

This commit is contained in:
Jonathan Treffler 2024-11-06 22:11:16 +01:00
parent 22c06b5689
commit 88cb258c2b
11 changed files with 428 additions and 0 deletions

View file

@ -2,14 +2,19 @@
namespace OCA\OrganizationFolders\AppInfo;
use Psr\Container\ContainerInterface;
use OCP\AppFramework\App;
use OCP\AppFramework\Bootstrap\IBootstrap;
use OCP\AppFramework\Bootstrap\IRegistrationContext;
use OCP\AppFramework\Bootstrap\IBootContext;
use OCP\IUserSession;
use OCA\DAV\Events\SabrePluginAddEvent;
use OCA\OrganizationFolders\Listener\SabrePluginAddListener;
use OCA\OrganizationFolders\Security\AuthorizationService;
use OCA\OrganizationFolders\Security\ResourceVoter;
class Application extends App implements IBootstrap {
public const APP_ID = 'organization_folders';
@ -20,6 +25,12 @@ class Application extends App implements IBootstrap {
public function register(IRegistrationContext $context): void {
$context->registerEventListener(SabrePluginAddEvent::class, SabrePluginAddListener::class);
$context->registerService(AuthorizationService::class, function (ContainerInterface $c) {
$service = new AuthorizationService($c->get(IUserSession::class));
$service->registerVoter($c->get(ResourceVoter::class));
return $service;
});
}
public function boot(IBootContext $context): void {