-
-
Notifications
You must be signed in to change notification settings - Fork 111
Expand file tree
/
Copy pathApplication.php
More file actions
97 lines (80 loc) · 3.98 KB
/
Application.php
File metadata and controls
97 lines (80 loc) · 3.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
<?php
declare(strict_types=1);
/**
* SPDX-FileCopyrightText: 2020-2024 LibreCode coop and contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
namespace OCA\Libresign\AppInfo;
use OCA\Files\Event\LoadAdditionalScriptsEvent;
use OCA\Files\Event\LoadSidebar;
use OCA\Libresign\Activity\Listener as ActivityListener;
use OCA\Libresign\Capabilities;
use OCA\Libresign\Dashboard\PendingSignaturesWidget;
use OCA\Libresign\Events\SendSignNotificationEvent;
use OCA\Libresign\Events\SignedEvent;
use OCA\Libresign\Events\SignRequestCanceledEvent;
use OCA\Libresign\Files\TemplateLoader;
use OCA\Libresign\Listener\BeforeNodeDeletedListener;
use OCA\Libresign\Listener\LoadAdditionalListener;
use OCA\Libresign\Listener\MailNotifyListener;
use OCA\Libresign\Listener\NotificationListener;
use OCA\Libresign\Listener\RevokeClickToSignCertificateListener;
use OCA\Libresign\Listener\SignedCallbackListener;
use OCA\Libresign\Listener\TwofactorGatewayListener;
use OCA\Libresign\Listener\UserDeletedListener;
use OCA\Libresign\Middleware\GlobalInjectionMiddleware;
use OCA\Libresign\Middleware\InjectionMiddleware;
use OCA\Libresign\Notification\Notifier;
use OCA\Libresign\Search\FileSearchProvider;
use OCP\AppFramework\App;
use OCP\AppFramework\Bootstrap\IBootContext;
use OCP\AppFramework\Bootstrap\IBootstrap;
use OCP\AppFramework\Bootstrap\IRegistrationContext;
use OCP\Files\Cache\CacheEntryRemovedEvent;
use OCP\Files\Events\Node\BeforeNodeDeletedEvent;
use OCP\User\Events\UserDeletedEvent;
/**
* @codeCoverageIgnore
*/
class Application extends App implements IBootstrap {
public const APP_ID = 'libresign';
public function __construct() {
parent::__construct(self::APP_ID);
}
#[\Override]
public function boot(IBootContext $context): void {
}
#[\Override]
public function register(IRegistrationContext $context): void {
$context->registerMiddleWare(GlobalInjectionMiddleware::class, true);
$context->registerMiddleWare(InjectionMiddleware::class);
$context->registerCapability(Capabilities::class);
$context->registerNotifierService(Notifier::class);
$context->registerSearchProvider(FileSearchProvider::class);
$context->registerEventListener(LoadSidebar::class, TemplateLoader::class);
$context->registerEventListener(BeforeNodeDeletedEvent::class, BeforeNodeDeletedListener::class);
$context->registerEventListener(CacheEntryRemovedEvent::class, BeforeNodeDeletedListener::class);
$context->registerEventListener(SignedEvent::class, SignedCallbackListener::class);
// Files newFile listener
$context->registerEventListener(LoadAdditionalScriptsEvent::class, LoadAdditionalListener::class);
// Activity listeners
$context->registerEventListener(SendSignNotificationEvent::class, ActivityListener::class);
$context->registerEventListener(SignedEvent::class, ActivityListener::class);
$context->registerEventListener(SignRequestCanceledEvent::class, ActivityListener::class);
// Notification listeners
$context->registerEventListener(SendSignNotificationEvent::class, NotificationListener::class);
$context->registerEventListener(SignedEvent::class, NotificationListener::class);
$context->registerEventListener(SignRequestCanceledEvent::class, NotificationListener::class);
// MailNotify listener
$context->registerEventListener(SendSignNotificationEvent::class, MailNotifyListener::class);
$context->registerEventListener(SignedEvent::class, MailNotifyListener::class);
$context->registerEventListener(SignRequestCanceledEvent::class, MailNotifyListener::class);
// Certificate Revocation listener
$context->registerEventListener(SignedEvent::class, RevokeClickToSignCertificateListener::class);
// TwofactorGateway listener
$context->registerEventListener(SendSignNotificationEvent::class, TwofactorGatewayListener::class);
$context->registerEventListener(SignedEvent::class, TwofactorGatewayListener::class);
$context->registerEventListener(UserDeletedEvent::class, UserDeletedListener::class);
$context->registerDashboardWidget(PendingSignaturesWidget::class);
}
}