Merge pull request #22169 from nextcloud/enh/noid/prefer-typed-events

Prefer typed event over string based ones
This commit is contained in:
Morris Jobke 2020-08-11 09:34:48 +02:00 committed by GitHub
commit bc4df68e56
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 8 additions and 6 deletions

View File

@ -278,9 +278,8 @@ class ViewController extends Controller {
}
$event = new LoadAdditionalScriptsEvent();
$this->eventDispatcher->dispatch(LoadAdditionalScriptsEvent::class, $event);
$this->eventDispatcher->dispatch(LoadSidebar::class, new LoadSidebar());
$this->eventDispatcher->dispatchTyped($event);
$this->eventDispatcher->dispatchTyped(new LoadSidebar());
// Load Viewer scripts
if (class_exists(LoadViewer::class)) {
$this->eventDispatcher->dispatchTyped(new LoadViewer());

View File

@ -36,6 +36,7 @@ use OCP\EventDispatcher\Event;
use OCP\EventDispatcher\IEventDispatcher;
use OCP\ILogger;
use OCP\IServerContainer;
use OCP\WorkflowEngine\Events\LoadSettingsScriptsEvent;
use OCP\WorkflowEngine\IEntity;
use OCP\WorkflowEngine\IEntityCompat;
use OCP\WorkflowEngine\IOperation;
@ -51,7 +52,7 @@ class Application extends App implements IBootstrap {
public function register(IRegistrationContext $context): void {
$context->registerServiceAlias('RequestTimeController', RequestTime::class);
$context->registerEventListener(
'OCP\WorkflowEngine::loadAdditionalSettingScripts',
LoadSettingsScriptsEvent::class,
LoadAdditionalSettingsScriptsListener::class,
-100
);

View File

@ -82,10 +82,12 @@ abstract class ASettings implements ISettings {
* @return TemplateResponse
*/
public function getForm() {
// @deprecated in 20.0.0: retire this one in favor of the typed event
$this->eventDispatcher->dispatch(
'OCP\WorkflowEngine::loadAdditionalSettingScripts',
new LoadSettingsScriptsEvent()
);
$this->eventDispatcher->dispatchTyped(new LoadSettingsScriptsEvent());
$entities = $this->manager->getEntitiesList();
$this->initialStateService->provideInitialState(

View File

@ -57,7 +57,7 @@ class ContentSecurityPolicyManager implements IContentSecurityPolicyManager {
*/
public function getDefaultPolicy(): ContentSecurityPolicy {
$event = new AddContentSecurityPolicyEvent($this);
$this->dispatcher->dispatch(AddContentSecurityPolicyEvent::class, $event);
$this->dispatcher->dispatchTyped($event);
$defaultPolicy = new \OC\Security\CSP\ContentSecurityPolicy();
foreach ($this->policies as $policy) {

View File

@ -47,7 +47,7 @@ class FeaturePolicyManager {
public function getDefaultPolicy(): FeaturePolicy {
$event = new AddFeaturePolicyEvent($this);
$this->dispatcher->dispatch(AddFeaturePolicyEvent::class, $event);
$this->dispatcher->dispatchTyped($event);
$defaultPolicy = new FeaturePolicy();
foreach ($this->policies as $policy) {