Passed
Pull Request — master (#62)
by Michael
15:25
created

getCustomerStoragePlugins()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 2
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 0
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
namespace Pyz\Zed\Publisher;
9
10
use Spryker\Shared\GlossaryStorage\GlossaryStorageConfig;
11
use Spryker\Shared\PublishAndSynchronizeHealthCheck\PublishAndSynchronizeHealthCheckConfig;
12
use Spryker\Zed\AssetStorage\Communication\Plugin\Publisher\Asset\AssetDeletePublisherPlugin;
13
use Spryker\Zed\AssetStorage\Communication\Plugin\Publisher\Asset\AssetWritePublisherPlugin;
14
use Spryker\Zed\AssetStorage\Communication\Plugin\Publisher\AssetPublisherTriggerPlugin;
15
use Spryker\Zed\CategoryImageStorage\Communication\Plugin\Publisher\CategoryImagePublisherTriggerPlugin;
16
use Spryker\Zed\CategoryPageSearch\Communication\Plugin\Publisher\Category\CategoryDeletePublisherPlugin as CategoryPageSearchCategoryDeletePublisherPlugin;
17
use Spryker\Zed\CategoryPageSearch\Communication\Plugin\Publisher\Category\CategoryWritePublisherPlugin as CategoryPageSearchCategoryWritePublisherPlugin;
18
use Spryker\Zed\CategoryPageSearch\Communication\Plugin\Publisher\CategoryAttribute\CategoryAttributeDeletePublisherPlugin as CategoryPageSearchCategoryAttributeDeletePublisherPlugin;
19
use Spryker\Zed\CategoryPageSearch\Communication\Plugin\Publisher\CategoryAttribute\CategoryAttributeWritePublisherPlugin as CategoryPageSearchCategoryAttributeWritePublisherPlugin;
20
use Spryker\Zed\CategoryPageSearch\Communication\Plugin\Publisher\CategoryNode\CategoryNodeDeletePublisherPlugin as CategoryPageSearchCategoryNodeDeletePublisherPlugin;
21
use Spryker\Zed\CategoryPageSearch\Communication\Plugin\Publisher\CategoryNode\CategoryNodeWritePublisherPlugin as CategoryPageSearchCategoryNodeWritePublisherPlugin;
22
use Spryker\Zed\CategoryPageSearch\Communication\Plugin\Publisher\CategoryPagePublisherTriggerPlugin;
23
use Spryker\Zed\CategoryPageSearch\Communication\Plugin\Publisher\CategoryStore\CategoryStoreWriteForPublishingPublisherPlugin as CategoryStoreSearchWriteForPublishingPublisherPlugin;
24
use Spryker\Zed\CategoryPageSearch\Communication\Plugin\Publisher\CategoryStore\CategoryStoreWritePublisherPlugin as CategoryStoreSearchWritePublisherPlugin;
25
use Spryker\Zed\CategoryPageSearch\Communication\Plugin\Publisher\CategoryTemplate\CategoryTemplateDeletePublisherPlugin as CategoryPageSearchCategoryTemplateDeletePublisherPlugin;
26
use Spryker\Zed\CategoryPageSearch\Communication\Plugin\Publisher\CategoryTemplate\CategoryTemplateWritePublisherPlugin as CategoryPageSearchCategoryTemplateWritePublisherPlugin;
27
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\Category\CategoryDeletePublisherPlugin;
28
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\Category\CategoryWritePublisherPlugin as CategoryStoreCategoryWritePublisherPlugin;
29
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\CategoryAttribute\CategoryAttributeDeletePublisherPlugin;
30
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\CategoryAttribute\CategoryAttributeWritePublisherPlugin;
31
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\CategoryNode\CategoryNodeDeletePublisherPlugin;
32
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\CategoryNode\CategoryNodeWritePublisherPlugin;
33
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\CategoryNodePublisherTriggerPlugin;
34
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\CategoryStore\CategoryStoreWriteForPublishingPublisherPlugin as CategoryStoreStorageWriteForPublishingPublisherPlugin;
35
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\CategoryStore\CategoryStoreWritePublisherPlugin as CategoryStoreStorageWritePublisherPlugin;
36
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\CategoryTemplate\CategoryTemplateDeletePublisherPlugin;
37
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\CategoryTemplate\CategoryTemplateWritePublisherPlugin;
38
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\CategoryTree\CategoryTreeDeletePublisherPlugin;
39
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\CategoryTree\CategoryTreeWriteForPublishingPublisherPlugin;
40
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\CategoryTreePublisherTriggerPlugin;
41
use Spryker\Zed\CategoryStorage\Communication\Plugin\Publisher\ParentWritePublisherPlugin;
42
use Spryker\Zed\CustomerStorage\Communication\Plugin\Publisher\Customer\CustomerInvalidatedWritePublisherPlugin;
43
use Spryker\Zed\FileManagerStorage\Communication\Plugin\Publisher\FileManagerPublisherTriggerPlugin;
44
use Spryker\Zed\GlossaryStorage\Communication\Plugin\Publisher\GlossaryKey\GlossaryDeletePublisherPlugin as GlossaryKeyDeletePublisherPlugin;
45
use Spryker\Zed\GlossaryStorage\Communication\Plugin\Publisher\GlossaryKey\GlossaryWritePublisherPlugin as GlossaryKeyWriterPublisherPlugin;
46
use Spryker\Zed\GlossaryStorage\Communication\Plugin\Publisher\GlossaryPublisherTriggerPlugin;
47
use Spryker\Zed\GlossaryStorage\Communication\Plugin\Publisher\GlossaryTranslation\GlossaryWritePublisherPlugin as GlossaryTranslationWritePublisherPlugin;
48
use Spryker\Zed\MerchantCategory\Communication\Plugin\Publisher\Category\CategoryWritePublisherPlugin;
49
use Spryker\Zed\MerchantOpeningHoursStorage\Communication\Plugin\Publisher\MerchantOpeningHours\MerchantOpeningHoursDateScheduleWritePublisherPlugin;
50
use Spryker\Zed\MerchantOpeningHoursStorage\Communication\Plugin\Publisher\MerchantOpeningHours\MerchantOpeningHoursWeekdayScheduleWritePublisherPlugin;
51
use Spryker\Zed\MerchantOpeningHoursStorage\Communication\Plugin\Publisher\MerchantOpeningHours\MerchantOpeningHoursWritePublisherPlugin;
52
use Spryker\Zed\MerchantProductOfferSearch\Communication\Plugin\Publisher\MerchantProductOfferSearchPublisherTriggerPlugin;
53
use Spryker\Zed\MerchantProductOfferSearch\Communication\Plugin\Publisher\ProductOffer\ProductConcreteWritePublisherPlugin as ProductOfferProductConcreteWritePublisherPlugin;
54
use Spryker\Zed\MerchantProductOfferSearch\Communication\Plugin\Publisher\ProductOfferStore\ProductConcreteWritePublisherPlugin as ProductOfferStoreProductConcreteWritePublisherPlugin;
55
use Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\Publisher\Merchant\MerchantProductOfferWritePublisherPlugin;
56
use Spryker\Zed\MerchantProductOfferStorage\Communication\Plugin\Publisher\ProductConcreteProductOffer\MerchantProductConcreteProductOfferWritePublisherPlugin;
57
use Spryker\Zed\MerchantProductOptionStorage\Communication\Plugin\Publisher\MerchantProductOption\MerchantProductOptionGroupWritePublisherPlugin;
58
use Spryker\Zed\MerchantProductOptionStorage\Communication\Plugin\Publisher\MerchantProductOptionGroupPublisherTriggerPlugin;
59
use Spryker\Zed\MerchantProductSearch\Communication\Plugin\Publisher\Merchant\MerchantProductSearchWritePublisherPlugin as MerchantMerchantProductSearchWritePublisherPlugin;
60
use Spryker\Zed\MerchantProductSearch\Communication\Plugin\Publisher\MerchantProduct\MerchantProductSearchWritePublisherPlugin;
61
use Spryker\Zed\MerchantProductSearch\Communication\Plugin\Publisher\MerchantProductSearchPublisherTriggerPlugin;
62
use Spryker\Zed\MerchantProductStorage\Communication\Plugin\Publisher\Merchant\MerchantUpdatePublisherPlugin;
63
use Spryker\Zed\MerchantProductStorage\Communication\Plugin\Publisher\MerchantProduct\MerchantProductWritePublisherPlugin;
64
use Spryker\Zed\MerchantProductStorage\Communication\Plugin\Publisher\MerchantProductPublisherTriggerPlugin;
65
use Spryker\Zed\MerchantSearch\Communication\Plugin\Publisher\Merchant\MerchantDeletePublisherPlugin;
66
use Spryker\Zed\MerchantSearch\Communication\Plugin\Publisher\Merchant\MerchantWritePublisherPlugin;
67
use Spryker\Zed\MerchantSearch\Communication\Plugin\Publisher\MerchantCategory\MerchantCategoryWritePublisherPlugin;
68
use Spryker\Zed\MerchantStorage\Communication\Plugin\Publisher\Merchant\MerchantStoragePublisherPlugin;
69
use Spryker\Zed\MerchantStorage\Communication\Plugin\Publisher\MerchantPublisherTriggerPlugin;
70
use Spryker\Zed\PriceProductMerchantRelationshipStorage\Communication\Plugin\Publisher\Merchant\MerchantWritePublisherPlugin as PriceProductMerchantWritePublisherPlugin;
71
use Spryker\Zed\PriceProductOfferStorage\Communication\Plugin\Publisher\PriceProductOffer\PriceProductStoreWritePublisherPlugin;
72
use Spryker\Zed\PriceProductOfferStorage\Communication\Plugin\Publisher\PriceProductOfferPublisherTriggerPlugin;
73
use Spryker\Zed\Product\Communication\Plugin\Publisher\ProductAbstractUpdatedMessageBrokerPublisherPlugin;
74
use Spryker\Zed\Product\Communication\Plugin\Publisher\ProductConcreteCreatedMessageBrokerPublisherPlugin;
75
use Spryker\Zed\Product\Communication\Plugin\Publisher\ProductConcreteDeletedMessageBrokerPublisherPlugin;
76
use Spryker\Zed\Product\Communication\Plugin\Publisher\ProductConcreteExportedMessageBrokerPublisherPlugin;
77
use Spryker\Zed\Product\Communication\Plugin\Publisher\ProductConcreteUpdatedMessageBrokerPublisherPlugin;
78
use Spryker\Zed\ProductAlternativeStorage\Communication\Plugin\Publisher\ProductAlternativePublisherTriggerPlugin;
79
use Spryker\Zed\ProductBundleStorage\Communication\Plugin\Publisher\ProductBundle\ProductBundlePublishWritePublisherPlugin;
80
use Spryker\Zed\ProductBundleStorage\Communication\Plugin\Publisher\ProductBundle\ProductBundleWritePublisherPlugin;
81
use Spryker\Zed\ProductBundleStorage\Communication\Plugin\Publisher\ProductBundlePublisherTriggerPlugin;
82
use Spryker\Zed\ProductBundleStorage\Communication\Plugin\Publisher\ProductConcrete\ProductBundleWritePublisherPlugin as ProductConcreteProductBundleWritePublisherPlugin;
83
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Publisher\Category\CategoryIsActiveAndCategoryKeyWritePublisherPlugin;
84
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Publisher\Category\CategoryStoreDeletePublisherPlugin;
85
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Publisher\Category\CategoryStoreWriteForPublishingPublisherPlugin;
86
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Publisher\Category\CategoryStoreWritePublisherPlugin;
87
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Publisher\Category\CategoryWritePublisherPlugin as ProductCategoryStorageCategoryWritePublisherPlugin;
88
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Publisher\CategoryAttribute\CategoryAttributeNameWritePublisherPlugin;
89
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Publisher\CategoryAttribute\CategoryAttributeWritePublisherPlugin as ProductCategoryAttributeWritePublisherPlugin;
90
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Publisher\CategoryNode\CategoryNodeWritePublisherPlugin as ProductCategoryNodeWritePublisherPlugin;
91
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Publisher\CategoryUrl\CategoryUrlAndResourceCategorynodeWritePublisherPlugin;
92
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Publisher\CategoryUrl\CategoryUrlWritePublisherPlugin;
93
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Publisher\ProductCategory\ProductCategoryWriteForPublishingPublisherPlugin;
94
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Publisher\ProductCategory\ProductCategoryWritePublisherPlugin;
95
use Spryker\Zed\ProductCategoryStorage\Communication\Plugin\Publisher\ProductCategoryPublisherTriggerPlugin;
96
use Spryker\Zed\ProductConfigurationStorage\Communication\Plugin\Publisher\ProductConfiguration\ProductConfigurationDeletePublisherPlugin;
97
use Spryker\Zed\ProductConfigurationStorage\Communication\Plugin\Publisher\ProductConfiguration\ProductConfigurationWritePublisherPlugin;
98
use Spryker\Zed\ProductConfigurationStorage\Communication\Plugin\Publisher\ProductConfigurationPublisherTriggerPlugin;
99
use Spryker\Zed\ProductDiscontinuedStorage\Communication\Plugin\Publisher\ProductDiscontinuedPublisherTriggerPlugin;
100
use Spryker\Zed\ProductLabelSearch\Communication\Plugin\Publisher\ProductLabel\ProductLabelWritePublisherPlugin as ProductLabelSearchWritePublisherPlugin;
101
use Spryker\Zed\ProductLabelSearch\Communication\Plugin\Publisher\ProductLabelProductAbstract\ProductLabelProductAbstractWritePublisherPlugin as ProductLabelProductAbstractSearchWritePublisherPlugin;
102
use Spryker\Zed\ProductLabelSearch\Communication\Plugin\Publisher\ProductLabelSearchPublisherTriggerPlugin;
103
use Spryker\Zed\ProductLabelSearch\Communication\Plugin\Publisher\ProductLabelStore\ProductLabelStoreWritePublisherPlugin as ProductLabelStoreSearchWritePublisherPlugin;
104
use Spryker\Zed\ProductLabelStorage\Communication\Plugin\Publisher\ProductAbstractLabel\ProductAbstractLabelWritePublisherPlugin as ProductAbstractLabelStorageWritePublisherPlugin;
105
use Spryker\Zed\ProductLabelStorage\Communication\Plugin\Publisher\ProductAbstractLabelPublisherTriggerPlugin;
106
use Spryker\Zed\ProductLabelStorage\Communication\Plugin\Publisher\ProductLabelDictionary\ProductLabelDictionaryDeletePublisherPlugin as ProductLabelDictionaryStorageDeletePublisherPlugin;
107
use Spryker\Zed\ProductLabelStorage\Communication\Plugin\Publisher\ProductLabelDictionary\ProductLabelDictionaryWritePublisherPlugin as ProductLabelDictionaryStorageWritePublisherPlugin;
108
use Spryker\Zed\ProductLabelStorage\Communication\Plugin\Publisher\ProductLabelDictionaryPublisherTriggerPlugin;
109
use Spryker\Zed\ProductLabelStorage\Communication\Plugin\Publisher\ProductLabelProductAbstract\ProductLabelProductAbstractWritePublisherPlugin as ProductLabelProductAbstractStorageWritePublisherPlugin;
110
use Spryker\Zed\ProductListSearch\Communication\Plugin\Publisher\ProductListSearchPublisherTriggerPlugin;
111
use Spryker\Zed\ProductListStorage\Communication\Plugin\Publisher\ProductListPublisherTriggerPlugin;
112
use Spryker\Zed\ProductOfferStorage\Communication\Plugin\Publisher\ProductConcreteOffers\ProductConcreteProductOffersDeletePublisherPlugin;
113
use Spryker\Zed\ProductOfferStorage\Communication\Plugin\Publisher\ProductConcreteOffers\ProductConcreteProductOffersStoreDeletePublisherPlugin;
114
use Spryker\Zed\ProductOfferStorage\Communication\Plugin\Publisher\ProductConcreteOffers\ProductConcreteProductOffersStoreWritePublisherPlugin;
115
use Spryker\Zed\ProductOfferStorage\Communication\Plugin\Publisher\ProductConcreteOffers\ProductConcreteProductOffersWritePublisherPlugin;
116
use Spryker\Zed\ProductOfferStorage\Communication\Plugin\Publisher\ProductOffer\ProductOfferDeletePublisherPlugin;
117
use Spryker\Zed\ProductOfferStorage\Communication\Plugin\Publisher\ProductOffer\ProductOfferStoreDeletePublisherPlugin;
118
use Spryker\Zed\ProductOfferStorage\Communication\Plugin\Publisher\ProductOffer\ProductOfferStoreWritePublisherPlugin;
119
use Spryker\Zed\ProductOfferStorage\Communication\Plugin\Publisher\ProductOffer\ProductOfferWritePublisherPlugin;
120
use Spryker\Zed\ProductOfferStorage\Communication\Plugin\Publisher\ProductOfferPublisherTriggerPlugin;
121
use Spryker\Zed\ProductPageSearch\Communication\Plugin\Publisher\Product\ProductConcretePageSearchWritePublisherPlugin;
122
use Spryker\Zed\ProductPageSearch\Communication\Plugin\Publisher\ProductConcretePublisherTriggerPlugin;
123
use Spryker\Zed\ProductRelationStorage\Communication\Plugin\Publisher\ProductRelation\ProductRelationWriteForPublishingPublisherPlugin;
124
use Spryker\Zed\ProductRelationStorage\Communication\Plugin\Publisher\ProductRelation\ProductRelationWritePublisherPlugin;
125
use Spryker\Zed\ProductRelationStorage\Communication\Plugin\Publisher\ProductRelationProductAbstract\ProductRelationProductAbstractWritePublisherPlugin;
126
use Spryker\Zed\ProductRelationStorage\Communication\Plugin\Publisher\ProductRelationPublisherTriggerPlugin;
127
use Spryker\Zed\ProductRelationStorage\Communication\Plugin\Publisher\ProductRelationStore\ProductRelationStoreWritePublisherPlugin;
128
use Spryker\Zed\PublishAndSynchronizeHealthCheckSearch\Communication\Plugin\Publisher\PublishAndSynchronizeHealthCheckSearchPublisherTriggerPlugin;
129
use Spryker\Zed\PublishAndSynchronizeHealthCheckSearch\Communication\Plugin\Publisher\PublishAndSynchronizeHealthCheckSearchWritePublisherPlugin;
130
use Spryker\Zed\PublishAndSynchronizeHealthCheckStorage\Communication\Plugin\Publisher\PublishAndSynchronizeHealthCheckPublisherTriggerPlugin;
131
use Spryker\Zed\PublishAndSynchronizeHealthCheckStorage\Communication\Plugin\Publisher\PublishAndSynchronizeHealthCheckStorageWritePublisherPlugin;
132
use Spryker\Zed\Publisher\PublisherDependencyProvider as SprykerPublisherDependencyProvider;
133
use Spryker\Zed\SalesReturnSearch\Communication\Plugin\Publisher\ReturnReason\ReturnReasonDeletePublisherPlugin;
134
use Spryker\Zed\SalesReturnSearch\Communication\Plugin\Publisher\ReturnReason\ReturnReasonWritePublisherPlugin;
135
use Spryker\Zed\SalesReturnSearch\Communication\Plugin\Publisher\ReturnReasonPublisherTriggerPlugin;
136
use Spryker\Zed\TaxProductStorage\Communication\Plugin\Publisher\TaxProductPublisherTriggerPlugin;
137
use Spryker\Zed\TaxStorage\Communication\Plugin\Publisher\TaxSetPublisherTriggerPlugin;
138
139
class PublisherDependencyProvider extends SprykerPublisherDependencyProvider
140
{
141
    /**
142
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
143
     */
144
    protected function getPublisherPlugins(): array
145
    {
146
        return array_merge(
147
            $this->getPublishAndSynchronizeHealthCheckPlugins(),
148
            $this->getGlossaryStoragePlugins(),
149
            $this->getProductRelationStoragePlugins(),
150
            $this->getProductLabelStoragePlugins(),
151
            $this->getProductLabelSearchPlugins(),
152
            $this->getReturnReasonSearchPlugins(),
153
            $this->getProductBundleStoragePlugins(),
154
            $this->getCategoryStoragePlugins(),
155
            $this->getCategoryPageSearchPlugins(),
156
            $this->getProductCategoryStoragePlugins(),
157
            $this->getMerchantStoragePlugins(),
158
            $this->getMerchantSearchPlugins(),
159
            $this->getMerchantProductPlugins(),
160
            $this->getMerchantProductSearchPlugins(),
161
            $this->getPriceProductOfferStoragePlugins(),
162
            $this->getMerchantProductSearchPlugins(),
163
            $this->getMerchantOpeningHoursStoragePlugins(),
164
            $this->getMerchantCategorySearchPlugins(),
165
            $this->getMerchantOpeningHoursStoragePlugins(),
166
            $this->getMerchantProductOptionStoragePlugins(),
167
            $this->getProductOfferStoragePlugins(),
168
            $this->getMerchantProductOfferStoragePlugins(),
169
            $this->getMerchantProductOfferSearchPlugins(),
170
            $this->getPriceProductMerchantRelationshipStoragePlugins(),
171
            $this->getAssetStoragePlugins(),
172
            $this->getProductConfigurationStoragePlugins(),
173
            $this->getCustomerStoragePlugins(),
174
            $this->getProductExportPlugins(),
175
            $this->getProductPageSearchPlugins(),
176
        );
177
    }
178
179
    /**
180
     * @return array
181
     */
182
    protected function getPublishAndSynchronizeHealthCheckPlugins(): array
183
    {
184
        return [
185
            PublishAndSynchronizeHealthCheckConfig::PUBLISH_PUBLISH_AND_SYNCHRONIZE_HEALTH_CHECK => [
186
                new PublishAndSynchronizeHealthCheckStorageWritePublisherPlugin(),
187
                new PublishAndSynchronizeHealthCheckSearchWritePublisherPlugin(),
188
            ],
189
        ];
190
    }
191
192
    /**
193
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherTriggerPluginInterface>
194
     */
195
    protected function getPublisherTriggerPlugins(): array
196
    {
197
        return [
198
            new GlossaryPublisherTriggerPlugin(),
199
            new ProductRelationPublisherTriggerPlugin(),
200
            new ProductAbstractLabelPublisherTriggerPlugin(),
201
            new ProductLabelDictionaryPublisherTriggerPlugin(),
202
            new ReturnReasonPublisherTriggerPlugin(),
203
            new ProductBundlePublisherTriggerPlugin(),
204
            new CategoryNodePublisherTriggerPlugin(),
205
            new CategoryTreePublisherTriggerPlugin(),
206
            new ProductCategoryPublisherTriggerPlugin(),
207
            new CategoryPagePublisherTriggerPlugin(),
208
            new MerchantPublisherTriggerPlugin(),
209
            new ProductConfigurationPublisherTriggerPlugin(),
210
            new ProductConcretePublisherTriggerPlugin(),
211
            new ProductAlternativePublisherTriggerPlugin(),
212
            new ProductDiscontinuedPublisherTriggerPlugin(),
213
            new TaxSetPublisherTriggerPlugin(),
214
            new TaxProductPublisherTriggerPlugin(),
215
            new PublishAndSynchronizeHealthCheckSearchPublisherTriggerPlugin(),
216
            new PublishAndSynchronizeHealthCheckPublisherTriggerPlugin(),
217
            new ProductOfferPublisherTriggerPlugin(),
218
            new ProductListPublisherTriggerPlugin(),
219
            new ProductListSearchPublisherTriggerPlugin(),
220
            new ProductLabelSearchPublisherTriggerPlugin(),
221
            new CategoryImagePublisherTriggerPlugin(),
222
            new FileManagerPublisherTriggerPlugin(),
223
            new MerchantProductOfferSearchPublisherTriggerPlugin(),
224
            new MerchantProductOptionGroupPublisherTriggerPlugin(),
225
            new MerchantProductSearchPublisherTriggerPlugin(),
226
            new MerchantProductPublisherTriggerPlugin(),
227
            new AssetPublisherTriggerPlugin(),
228
            new PriceProductOfferPublisherTriggerPlugin(),
229
        ];
230
    }
231
232
    /**
233
     * @return array
234
     */
235
    protected function getGlossaryStoragePlugins(): array
236
    {
237
        return [
238
            GlossaryStorageConfig::PUBLISH_TRANSLATION => [
239
                new GlossaryKeyDeletePublisherPlugin(),
240
                new GlossaryKeyWriterPublisherPlugin(),
241
                new GlossaryTranslationWritePublisherPlugin(),
242
            ],
243
        ];
244
    }
245
246
    /**
247
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
248
     */
249
    protected function getProductRelationStoragePlugins(): array
250
    {
251
        return [
252
            new ProductRelationWritePublisherPlugin(),
253
            new ProductRelationWriteForPublishingPublisherPlugin(),
254
            new ProductRelationProductAbstractWritePublisherPlugin(),
255
            new ProductRelationStoreWritePublisherPlugin(),
256
        ];
257
    }
258
259
    /**
260
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
261
     */
262
    protected function getProductLabelStoragePlugins(): array
263
    {
264
        return [
265
            new ProductAbstractLabelStorageWritePublisherPlugin(),
266
            new ProductLabelProductAbstractStorageWritePublisherPlugin(),
267
            new ProductLabelDictionaryStorageWritePublisherPlugin(),
268
            new ProductLabelDictionaryStorageDeletePublisherPlugin(),
269
        ];
270
    }
271
272
    /**
273
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
274
     */
275
    protected function getProductLabelSearchPlugins(): array
276
    {
277
        return [
278
            new ProductLabelSearchWritePublisherPlugin(),
279
            new ProductLabelProductAbstractSearchWritePublisherPlugin(),
280
            new ProductLabelStoreSearchWritePublisherPlugin(),
281
        ];
282
    }
283
284
    /**
285
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
286
     */
287
    protected function getReturnReasonSearchPlugins(): array
288
    {
289
        return [
290
            new ReturnReasonWritePublisherPlugin(),
291
            new ReturnReasonDeletePublisherPlugin(),
292
        ];
293
    }
294
295
    /**
296
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
297
     */
298
    protected function getProductBundleStoragePlugins(): array
299
    {
300
        return [
301
            new ProductBundlePublishWritePublisherPlugin(),
302
            new ProductBundleWritePublisherPlugin(),
303
            new ProductConcreteProductBundleWritePublisherPlugin(),
304
        ];
305
    }
306
307
    /**
308
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
309
     */
310
    protected function getCategoryStoragePlugins(): array
311
    {
312
        return [
313
            new CategoryStoreStorageWritePublisherPlugin(),
314
            new CategoryStoreStorageWriteForPublishingPublisherPlugin(),
315
            new CategoryTreeWriteForPublishingPublisherPlugin(),
316
            new CategoryDeletePublisherPlugin(),
317
            new CategoryStoreCategoryWritePublisherPlugin(),
318
            new CategoryAttributeDeletePublisherPlugin(),
319
            new CategoryAttributeWritePublisherPlugin(),
320
            new CategoryNodeDeletePublisherPlugin(),
321
            new CategoryNodeWritePublisherPlugin(),
322
            new CategoryTemplateDeletePublisherPlugin(),
323
            new CategoryTemplateWritePublisherPlugin(),
324
            new CategoryTreeDeletePublisherPlugin(),
325
            new ParentWritePublisherPlugin(),
326
        ];
327
    }
328
329
    /**
330
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
331
     */
332
    protected function getCategoryPageSearchPlugins(): array
333
    {
334
        return [
335
            new CategoryStoreSearchWritePublisherPlugin(),
336
            new CategoryStoreSearchWriteForPublishingPublisherPlugin(),
337
            new CategoryPageSearchCategoryDeletePublisherPlugin(),
338
            new CategoryPageSearchCategoryWritePublisherPlugin(),
339
            new CategoryPageSearchCategoryAttributeDeletePublisherPlugin(),
340
            new CategoryPageSearchCategoryAttributeWritePublisherPlugin(),
341
            new CategoryPageSearchCategoryNodeDeletePublisherPlugin(),
342
            new CategoryPageSearchCategoryNodeWritePublisherPlugin(),
343
            new CategoryPageSearchCategoryTemplateDeletePublisherPlugin(),
344
            new CategoryPageSearchCategoryTemplateWritePublisherPlugin(),
345
        ];
346
    }
347
348
    /**
349
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
350
     */
351
    protected function getProductCategoryStoragePlugins(): array
352
    {
353
        return [
354
            new CategoryStoreWritePublisherPlugin(),
355
            new CategoryStoreWriteForPublishingPublisherPlugin(),
356
            new CategoryStoreDeletePublisherPlugin(),
357
            new ProductCategoryStorageCategoryWritePublisherPlugin(),
358
            new CategoryIsActiveAndCategoryKeyWritePublisherPlugin(),
359
            new ProductCategoryAttributeWritePublisherPlugin(),
360
            new CategoryAttributeNameWritePublisherPlugin(),
361
            new ProductCategoryNodeWritePublisherPlugin(),
362
            new CategoryUrlWritePublisherPlugin(),
363
            new CategoryUrlAndResourceCategorynodeWritePublisherPlugin(),
364
            new ProductCategoryWriteForPublishingPublisherPlugin(),
365
            new ProductCategoryWritePublisherPlugin(),
366
        ];
367
    }
368
369
    /**
370
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
371
     */
372
    protected function getMerchantStoragePlugins(): array
373
    {
374
        return [
375
            new MerchantStoragePublisherPlugin(),
376
        ];
377
    }
378
379
    /**
380
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
381
     */
382
    protected function getMerchantSearchPlugins(): array
383
    {
384
        return [
385
            new MerchantWritePublisherPlugin(),
386
            new MerchantDeletePublisherPlugin(),
387
        ];
388
    }
389
390
    /**
391
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
392
     */
393
    protected function getMerchantOpeningHoursStoragePlugins(): array
394
    {
395
        return [
396
            new MerchantOpeningHoursWritePublisherPlugin(),
397
            new MerchantOpeningHoursWeekdayScheduleWritePublisherPlugin(),
398
            new MerchantOpeningHoursDateScheduleWritePublisherPlugin(),
399
        ];
400
    }
401
402
    /**
403
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
404
     */
405
    protected function getMerchantProductPlugins(): array
406
    {
407
        return [
408
            new MerchantProductWritePublisherPlugin(),
409
            new MerchantUpdatePublisherPlugin(),
410
        ];
411
    }
412
413
    /**
414
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
415
     */
416
    protected function getMerchantProductSearchPlugins(): array
417
    {
418
        return [
419
            new MerchantMerchantProductSearchWritePublisherPlugin(),
420
            new MerchantProductSearchWritePublisherPlugin(),
421
        ];
422
    }
423
424
    /**
425
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
426
     */
427
    protected function getMerchantCategorySearchPlugins(): array
428
    {
429
        return [
430
            new CategoryWritePublisherPlugin(),
431
            new MerchantCategoryWritePublisherPlugin(),
432
        ];
433
    }
434
435
    /**
436
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
437
     */
438
    protected function getPriceProductOfferStoragePlugins(): array
439
    {
440
        return [
441
            new PriceProductStoreWritePublisherPlugin(),
442
        ];
443
    }
444
445
    /**
446
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
447
     */
448
    protected function getMerchantProductOptionStoragePlugins(): array
449
    {
450
        return [
451
            new MerchantProductOptionGroupWritePublisherPlugin(),
452
        ];
453
    }
454
455
    /**
456
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
457
     */
458
    protected function getProductOfferStoragePlugins(): array
459
    {
460
        return [
461
            new ProductConcreteProductOffersDeletePublisherPlugin(),
462
            new ProductConcreteProductOffersWritePublisherPlugin(),
463
            new ProductOfferDeletePublisherPlugin(),
464
            new ProductOfferWritePublisherPlugin(),
465
            new ProductOfferStoreWritePublisherPlugin(),
466
            new ProductOfferStoreDeletePublisherPlugin(),
467
            new ProductConcreteProductOffersStoreWritePublisherPlugin(),
468
            new ProductConcreteProductOffersStoreDeletePublisherPlugin(),
469
        ];
470
    }
471
472
    /**
473
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
474
     */
475
    protected function getMerchantProductOfferStoragePlugins(): array
476
    {
477
        return [
478
            new MerchantProductConcreteProductOfferWritePublisherPlugin(),
479
            new MerchantProductOfferWritePublisherPlugin(),
480
        ];
481
    }
482
483
    /**
484
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
485
     */
486
    protected function getMerchantProductOfferSearchPlugins(): array
487
    {
488
        return [
489
            new ProductOfferProductConcreteWritePublisherPlugin(),
490
            new ProductOfferStoreProductConcreteWritePublisherPlugin(),
491
        ];
492
    }
493
494
    /**
495
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
496
     */
497
    protected function getPriceProductMerchantRelationshipStoragePlugins(): array
498
    {
499
        return [
500
            new PriceProductMerchantWritePublisherPlugin(),
501
        ];
502
    }
503
504
    /**
505
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
506
     */
507
    protected function getAssetStoragePlugins(): array
508
    {
509
        return [
510
            new AssetWritePublisherPlugin(),
511
            new AssetDeletePublisherPlugin(),
512
        ];
513
    }
514
515
    /**
516
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
517
     */
518
    protected function getProductConfigurationStoragePlugins(): array
519
    {
520
        return [
521
            new ProductConfigurationWritePublisherPlugin(),
522
            new ProductConfigurationDeletePublisherPlugin(),
523
        ];
524
    }
525
526
    /**
527
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
528
     */
529
    protected function getProductExportPlugins(): array
530
    {
531
        return [
532
            new ProductConcreteExportedMessageBrokerPublisherPlugin(),
533
            new ProductConcreteCreatedMessageBrokerPublisherPlugin(),
534
            new ProductConcreteUpdatedMessageBrokerPublisherPlugin(),
535
            new ProductConcreteDeletedMessageBrokerPublisherPlugin(),
536
            new ProductAbstractUpdatedMessageBrokerPublisherPlugin(),
537
        ];
538
    }
539
540
    /**
541
     * @return array<int, \Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
542
     */
543
    protected function getCustomerStoragePlugins(): array
544
    {
545
        return [
546
            new CustomerInvalidatedWritePublisherPlugin(),
547
        ];
548
    }
549
550
    /**
551
     * @return array<\Spryker\Zed\PublisherExtension\Dependency\Plugin\PublisherPluginInterface>
552
     */
553
    protected function getProductPageSearchPlugins(): array
554
    {
555
        return [
556
            new ProductConcretePageSearchWritePublisherPlugin(),
557
        ];
558
    }
559
}
560