SynchronizationDependencyProvider   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 76
Duplicated Lines 0 %

Importance

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

2 Methods

Rating   Name   Duplication   Size   Complexity  
B getSynchronizationDataPlugins() 0 62 1
A getSynchronizationDataQueryExpanderStrategyPlugin() 0 3 1
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\Zed\Synchronization;
11
12
use Spryker\Zed\AssetStorage\Communication\Plugin\Synchronization\AssetStorageSynchronizationDataPlugin;
13
use Spryker\Zed\AvailabilityStorage\Communication\Plugin\Synchronization\AvailabilitySynchronizationDataPlugin;
14
use Spryker\Zed\CategoryImageStorage\Communication\Plugin\Synchronization\CategoryImageSynchronizationDataBulkPlugin;
15
use Spryker\Zed\CategoryPageSearch\Communication\Plugin\Synchronization\CategoryPageSynchronizationDataBulkRepositoryPlugin;
16
use Spryker\Zed\CategoryStorage\Communication\Plugin\Synchronization\CategoryNodeSynchronizationDataBulkRepositoryPlugin;
17
use Spryker\Zed\CategoryStorage\Communication\Plugin\Synchronization\CategoryTreeSynchronizationDataBulkRepositoryPlugin;
18
use Spryker\Zed\CmsBlockCategoryStorage\Communication\Plugin\Synchronization\CmsBlockCategorySynchronizationDataPlugin;
19
use Spryker\Zed\CmsBlockProductStorage\Communication\Plugin\Synchronization\CmsBlockProductSynchronizationDataPlugin;
20
use Spryker\Zed\CmsBlockStorage\Communication\Plugin\Synchronization\CmsBlockSynchronizationDataPlugin;
21
use Spryker\Zed\CmsPageSearch\Communication\Plugin\Synchronization\CmsPageSynchronizationDataPlugin;
22
use Spryker\Zed\CmsSlotBlockStorage\Communication\Plugin\Synchronization\CmsSlotBlockSynchronizationDataBulkPlugin;
23
use Spryker\Zed\CmsSlotStorage\Communication\Plugin\Synchronization\CmsSlotSynchronizationDataBulkPlugin;
24
use Spryker\Zed\CmsStorage\Communication\Plugin\Synchronization\CmsSynchronizationDataPlugin;
25
use Spryker\Zed\ConfigurableBundlePageSearch\Communication\Plugin\Synchronization\ConfigurableBundleTemplatePageSynchronizationDataBulkPlugin;
26
use Spryker\Zed\ConfigurableBundleStorage\Communication\Plugin\Synchronization\ConfigurableBundleTemplateImageSynchronizationDataBulkPlugin;
27
use Spryker\Zed\ConfigurableBundleStorage\Communication\Plugin\Synchronization\ConfigurableBundleTemplateSynchronizationDataBulkPlugin;
28
use Spryker\Zed\ContentStorage\Communication\Plugin\Synchronization\ContentStorageSynchronizationDataPlugin;
29
use Spryker\Zed\CustomerAccessStorage\Communication\Plugin\Synchronization\CustomerAccessSynchronizationDataBulkPlugin;
30
use Spryker\Zed\CustomerStorage\Communication\Plugin\Synchronization\CustomerInvalidatedStorageSynchronizationDataPlugin;
31
use Spryker\Zed\FileManagerStorage\Communication\Plugin\Synchronization\FileSynchronizationDataBulkPlugin;
32
use Spryker\Zed\GlossaryStorage\Communication\Plugin\Synchronization\GlossarySynchronizationDataRepositoryPlugin;
33
use Spryker\Zed\NavigationStorage\Communication\Plugin\Synchronization\NavigationSynchronizationDataPlugin;
34
use Spryker\Zed\PriceProductStorage\Communication\Plugin\Synchronization\PriceProductAbstractSynchronizationDataPlugin;
35
use Spryker\Zed\PriceProductStorage\Communication\Plugin\Synchronization\PriceProductConcreteSynchronizationDataPlugin;
36
use Spryker\Zed\ProductAlternativeStorage\Communication\Plugin\Synchronization\ProductAlternativeSynchronizationDataBulkPlugin;
37
use Spryker\Zed\ProductAlternativeStorage\Communication\Plugin\Synchronization\ProductReplacementForSynchronizationDataBulkPlugin;
38
use Spryker\Zed\ProductBundleStorage\Communication\Plugin\Synchronization\ProductBundleSynchronizationDataBulkRepositoryPlugin;
39
use Spryker\Zed\ProductCategoryFilterStorage\Communication\Plugin\Synchronization\ProductCategoryFilterSynchronizationDataPlugin;
40
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Synchronization\ProductCategorySynchronizationDataBulkRepositoryPlugin;
41
use Spryker\Zed\ProductConfigurationStorage\Communication\Plugin\Synchronization\ProductConfigurationSynchronizationDataRepositoryPlugin;
42
use Spryker\Zed\ProductDiscontinuedStorage\Communication\Plugin\Synchronization\ProductDiscontinuedSynchronizationDataBulkPlugin;
43
use Spryker\Zed\ProductGroupStorage\Communication\Plugin\Synchronization\ProductGroupSynchronizationDataPlugin;
44
use Spryker\Zed\ProductImageStorage\Communication\Plugin\Synchronization\ProductAbstractImageSynchronizationDataPlugin;
45
use Spryker\Zed\ProductImageStorage\Communication\Plugin\Synchronization\ProductConcreteImageSynchronizationDataPlugin;
46
use Spryker\Zed\ProductLabelStorage\Communication\Plugin\Synchronization\ProductAbstractLabelSynchronizationDataRepositoryPlugin;
47
use Spryker\Zed\ProductLabelStorage\Communication\Plugin\Synchronization\ProductLabelDictionarySynchronizationDataRepositoryPlugin;
48
use Spryker\Zed\ProductListStorage\Communication\Plugin\Synchronization\ProductAbstractProductListSynchronizationDataBulkPlugin;
49
use Spryker\Zed\ProductListStorage\Communication\Plugin\Synchronization\ProductConcreteProductListSynchronizationDataBulkPlugin;
50
use Spryker\Zed\ProductOptionStorage\Communication\Plugin\Synchronization\ProductOptionSynchronizationDataPlugin;
51
use Spryker\Zed\ProductPageSearch\Communication\Plugin\Synchronization\ProductConcretePageSynchronizationDataBulkPlugin;
52
use Spryker\Zed\ProductPageSearch\Communication\Plugin\Synchronization\ProductPageSynchronizationDataPlugin;
53
use Spryker\Zed\ProductQuantityStorage\Communication\Plugin\Synchronization\ProductQuantitySynchronizationDataBulkPlugin;
54
use Spryker\Zed\ProductRelationStorage\Communication\Plugin\Synchronization\ProductRelationSynchronizationDataRepositoryPlugin;
55
use Spryker\Zed\ProductReviewSearch\Communication\Plugin\Synchronization\ProductReviewSynchronizationDataPlugin as ProductReviewSearchSynchronizationDataPlugin;
56
use Spryker\Zed\ProductReviewStorage\Communication\Plugin\Synchronization\ProductReviewSynchronizationDataPlugin;
57
use Spryker\Zed\ProductSearchConfigStorage\Communication\Plugin\Synchronization\ProductSearchConfigSynchronizationDataPlugin;
58
use Spryker\Zed\ProductSetPageSearch\Communication\Plugin\Synchronization\ProductSetSynchronizationDataPlugin as ProductSetSearchSynchronizationDataPlugin;
59
use Spryker\Zed\ProductSetStorage\Communication\Plugin\Synchronization\ProductSetSynchronizationDataPlugin;
60
use Spryker\Zed\ProductStorage\Communication\Plugin\Synchronization\ProductAbstractSynchronizationDataPlugin;
61
use Spryker\Zed\ProductStorage\Communication\Plugin\Synchronization\ProductConcreteSynchronizationDataPlugin;
62
use Spryker\Zed\SalesReturnSearch\Communication\Plugin\Synchronization\ReturnReasonSynchronizationDataBulkRepositoryPlugin;
63
use Spryker\Zed\SearchHttp\Communication\Plugin\Synchronization\SearchHttpSynchronizationDataPlugin;
64
use Spryker\Zed\StoreStorage\Communication\Plugin\Synchronization\StoreListSynchronizationDataPlugin;
65
use Spryker\Zed\StoreStorage\Communication\Plugin\Synchronization\StoreSynchronizationDataPlugin;
66
use Spryker\Zed\Synchronization\Communication\Plugin\Synchronization\SynchronizationDataQueryExpanderWhereBetweenStrategyPlugin;
67
use Spryker\Zed\Synchronization\SynchronizationDependencyProvider as SprykerSynchronizationDependencyProvider;
68
use Spryker\Zed\SynchronizationExtension\Dependency\Plugin\SynchronizationDataQueryExpanderStrategyPluginInterface;
69
use Spryker\Zed\TaxProductStorage\Communication\Plugin\Synchronization\TaxProductSynchronizationDataBulkRepositoryPlugin;
70
use Spryker\Zed\TaxStorage\Communication\Plugin\Synchronization\TaxSynchronizationDataPlugin;
71
use Spryker\Zed\UrlStorage\Communication\Plugin\Synchronization\UrlRedirectSynchronizationDataPlugin;
72
use Spryker\Zed\UrlStorage\Communication\Plugin\Synchronization\UrlSynchronizationDataPlugin;
73
74
class SynchronizationDependencyProvider extends SprykerSynchronizationDependencyProvider
75
{
76
    /**
77
     * @return array<\Spryker\Zed\SynchronizationExtension\Dependency\Plugin\SynchronizationDataPluginInterface>
78
     */
79
    protected function getSynchronizationDataPlugins(): array
80
    {
81
        return [
82
            new CategoryPageSynchronizationDataBulkRepositoryPlugin(),
83
            new CmsPageSynchronizationDataPlugin(),
84
            new ProductPageSynchronizationDataPlugin(),
85
            new ProductReviewSearchSynchronizationDataPlugin(),
86
            new ProductSetSearchSynchronizationDataPlugin(),
87
            new AvailabilitySynchronizationDataPlugin(),
88
            new CategoryTreeSynchronizationDataBulkRepositoryPlugin(),
89
            new CategoryNodeSynchronizationDataBulkRepositoryPlugin(),
90
            new CmsBlockCategorySynchronizationDataPlugin(),
91
            new CmsBlockProductSynchronizationDataPlugin(),
92
            new StoreSynchronizationDataPlugin(),
93
            new CmsBlockSynchronizationDataPlugin(),
94
            new CmsSynchronizationDataPlugin(),
95
            new CmsSlotBlockSynchronizationDataBulkPlugin(),
96
            new CmsSlotSynchronizationDataBulkPlugin(),
97
            new ConfigurableBundleTemplateSynchronizationDataBulkPlugin(),
98
            new ConfigurableBundleTemplateImageSynchronizationDataBulkPlugin(),
99
            new CustomerInvalidatedStorageSynchronizationDataPlugin(),
100
            new FileSynchronizationDataBulkPlugin(),
101
            new NavigationSynchronizationDataPlugin(),
102
            new GlossarySynchronizationDataRepositoryPlugin(),
103
            new PriceProductConcreteSynchronizationDataPlugin(),
104
            new PriceProductAbstractSynchronizationDataPlugin(),
105
            new ProductCategoryFilterSynchronizationDataPlugin(),
106
            new ProductCategorySynchronizationDataBulkRepositoryPlugin(),
107
            new ProductGroupSynchronizationDataPlugin(),
108
            new ProductAbstractImageSynchronizationDataPlugin(),
109
            new ProductConcreteImageSynchronizationDataPlugin(),
110
            new CategoryImageSynchronizationDataBulkPlugin(),
111
            new ProductAbstractLabelSynchronizationDataRepositoryPlugin(),
112
            new ProductLabelDictionarySynchronizationDataRepositoryPlugin(),
113
            new ProductQuantitySynchronizationDataBulkPlugin(),
114
            new ProductOptionSynchronizationDataPlugin(),
115
            new ProductRelationSynchronizationDataRepositoryPlugin(),
116
            new ProductReviewSynchronizationDataPlugin(),
117
            new ProductSearchConfigSynchronizationDataPlugin(),
118
            new ProductSetSynchronizationDataPlugin(),
119
            new ProductConcreteSynchronizationDataPlugin(),
120
            new ProductAbstractSynchronizationDataPlugin(),
121
            new UrlRedirectSynchronizationDataPlugin(),
122
            new UrlSynchronizationDataPlugin(),
123
            new ProductAbstractProductListSynchronizationDataBulkPlugin(),
124
            new ProductConcreteProductListSynchronizationDataBulkPlugin(),
125
            new ProductDiscontinuedSynchronizationDataBulkPlugin(),
126
            new CustomerAccessSynchronizationDataBulkPlugin(),
127
            new ProductConcretePageSynchronizationDataBulkPlugin(),
128
            new ContentStorageSynchronizationDataPlugin(),
129
            new ProductAlternativeSynchronizationDataBulkPlugin(),
130
            new ProductReplacementForSynchronizationDataBulkPlugin(),
131
            new TaxProductSynchronizationDataBulkRepositoryPlugin(),
132
            new TaxSynchronizationDataPlugin(),
133
            new CmsSlotSynchronizationDataBulkPlugin(),
134
            new ConfigurableBundleTemplatePageSynchronizationDataBulkPlugin(),
135
            new ReturnReasonSynchronizationDataBulkRepositoryPlugin(),
136
            new ProductBundleSynchronizationDataBulkRepositoryPlugin(),
137
            new AssetStorageSynchronizationDataPlugin(),
138
            new ProductConfigurationSynchronizationDataRepositoryPlugin(),
139
            new SearchHttpSynchronizationDataPlugin(),
140
            new StoreListSynchronizationDataPlugin(),
141
        ];
142
    }
143
144
    /**
145
     * @return \Spryker\Zed\SynchronizationExtension\Dependency\Plugin\SynchronizationDataQueryExpanderStrategyPluginInterface
146
     */
147
    protected function getSynchronizationDataQueryExpanderStrategyPlugin(): SynchronizationDataQueryExpanderStrategyPluginInterface
148
    {
149
        return new SynchronizationDataQueryExpanderWhereBetweenStrategyPlugin();
150
    }
151
}
152