EventDispatcherDependencyProvider   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 40
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 2
eloc 30
c 1
b 0
f 0
dl 0
loc 40
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A getEventDispatcherPlugins() 0 35 2
1
<?php
2
3
/**
4
 * This file is part of the Spryker Commerce OS.
5
 * For full license information, please view the LICENSE file that was distributed with this source code.
6
 */
7
8
declare(strict_types = 1);
9
10
namespace Pyz\Yves\EventDispatcher;
11
12
use Spryker\Shared\Http\Plugin\EventDispatcher\ResponseListenerEventDispatcherPlugin;
13
use Spryker\Yves\Application\Communication\Plugin\EventDispatcher\HeadersSecurityEventDispatcherPlugin;
14
use Spryker\Yves\Customer\Plugin\EventDispatcher\AnonymousIdSessionAssignEventDispatcherPlugin;
15
use Spryker\Yves\EventDispatcher\EventDispatcherDependencyProvider as SprykerEventDispatcherDependencyProvider;
16
use Spryker\Yves\Http\Plugin\EventDispatcher\CacheControlHeaderEventDispatcherPlugin;
17
use Spryker\Yves\Http\Plugin\EventDispatcher\CookieEventDispatcherPlugin;
18
use Spryker\Yves\Http\Plugin\EventDispatcher\EnvironmentInfoHeaderEventDispatcherPlugin;
19
use Spryker\Yves\Http\Plugin\EventDispatcher\FragmentEventDispatcherPlugin;
20
use Spryker\Yves\Http\Plugin\EventDispatcher\HstsHeaderEventDispatcher;
21
use Spryker\Yves\Kernel\Plugin\EventDispatcher\AutoloaderCacheEventDispatcherPlugin;
22
use Spryker\Yves\Kernel\Plugin\EventDispatcher\RedirectUrlValidationEventDispatcherPlugin;
23
use Spryker\Yves\Locale\Plugin\EventDispatcher\LocaleEventDispatcherPlugin;
24
use Spryker\Yves\Monitoring\Plugin\EventDispatcher\MonitoringRequestTransactionEventDispatcherPlugin;
25
use Spryker\Yves\Profiler\Plugin\EventDispatcher\ProfilerRequestEventDispatcherPlugin;
26
use Spryker\Yves\Router\Plugin\EventDispatcher\RouterListenerEventDispatcherPlugin;
27
use Spryker\Yves\Router\Plugin\EventDispatcher\RouterLocaleEventDispatcherPlugin;
28
use Spryker\Yves\Router\Plugin\EventDispatcher\RouterSslRedirectEventDispatcherPlugin;
29
use Spryker\Yves\Session\Plugin\EventDispatcher\SaveSessionEventDispatcherPlugin;
30
use Spryker\Yves\Session\Plugin\EventDispatcher\SessionEventDispatcherPlugin;
31
use Spryker\Yves\Storage\Plugin\EventDispatcher\StorageCacheEventDispatcherPlugin;
32
use SprykerShop\Yves\ErrorPage\Plugin\EventDispatcher\ErrorPageEventDispatcherPlugin;
33
use SprykerShop\Yves\SecurityBlockerPage\Plugin\EventDispatcher\SecurityBlockerAgentEventDispatcherPlugin;
34
use SprykerShop\Yves\SecurityBlockerPage\Plugin\EventDispatcher\SecurityBlockerCustomerEventDispatcherPlugin;
35
use SprykerShop\Yves\ShopApplication\Plugin\EventDispatcher\LastVisitCookieEventDispatcherPlugin;
36
use SprykerShop\Yves\ShopApplication\Plugin\EventDispatcher\ShopApplicationEventDispatcherPlugin;
37
use SprykerShop\Yves\ShopApplication\Plugin\EventDispatcher\ShopApplicationExceptionEventDispatcherPlugin;
38
use SprykerShop\Yves\ShopApplication\Plugin\EventDispatcher\ShopApplicationFilterControllerEventDispatcherPlugin;
39
40
class EventDispatcherDependencyProvider extends SprykerEventDispatcherDependencyProvider
41
{
42
    /**
43
     * @return array<\Spryker\Shared\EventDispatcherExtension\Dependency\Plugin\EventDispatcherPluginInterface>
44
     */
45
    protected function getEventDispatcherPlugins(): array
46
    {
47
        $plugins = [
48
            new ErrorPageEventDispatcherPlugin(),
49
            new HeadersSecurityEventDispatcherPlugin(),
50
            new LocaleEventDispatcherPlugin(),
51
            new RouterLocaleEventDispatcherPlugin(),
52
            new ShopApplicationEventDispatcherPlugin(),
53
            new ShopApplicationFilterControllerEventDispatcherPlugin(),
54
            new ShopApplicationExceptionEventDispatcherPlugin(),
55
            new LastVisitCookieEventDispatcherPlugin(),
56
            new RouterListenerEventDispatcherPlugin(),
57
            new RouterSslRedirectEventDispatcherPlugin(),
58
            new CookieEventDispatcherPlugin(),
59
            new FragmentEventDispatcherPlugin(),
60
            new CacheControlHeaderEventDispatcherPlugin(),
61
            new HstsHeaderEventDispatcher(),
62
            new StorageCacheEventDispatcherPlugin(),
63
            new MonitoringRequestTransactionEventDispatcherPlugin(),
64
            new AutoloaderCacheEventDispatcherPlugin(),
65
            new SessionEventDispatcherPlugin(),
66
            new SaveSessionEventDispatcherPlugin(),
67
            new RedirectUrlValidationEventDispatcherPlugin(),
68
            new ResponseListenerEventDispatcherPlugin(),
69
            new SecurityBlockerCustomerEventDispatcherPlugin(),
70
            new SecurityBlockerAgentEventDispatcherPlugin(),
71
            new EnvironmentInfoHeaderEventDispatcherPlugin(),
72
            new AnonymousIdSessionAssignEventDispatcherPlugin(),
73
        ];
74
75
        if (class_exists(ProfilerRequestEventDispatcherPlugin::class)) {
76
            $plugins[] = new ProfilerRequestEventDispatcherPlugin();
77
        }
78
79
        return $plugins;
80
    }
81
}
82