ConsoleDependencyProvider::getConsoleCommands()   B
last analyzed

Complexity

Conditions 3
Paths 3

Size

Total Lines 247
Code Lines 209

Duplication

Lines 0
Ratio 0 %

Importance

Changes 3
Bugs 0 Features 0
Metric Value
eloc 209
c 3
b 0
f 0
dl 0
loc 247
rs 8
cc 3
nc 3
nop 1

How to fix   Long Method   

Long Method

Small methods make your code easier to understand, in particular if combined with a good name. Besides, if your method is small, finding a good name is usually much easier.

For example, if you find yourself adding comments to a method's body, this is usually a good sign to extract the commented part to a new method, and use the comment as a starting point when coming up with a good name for this new method.

Commonly applied refactorings include:

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\Console;
11
12
use Pyz\Zed\DataImport\DataImportConfig;
13
use Pyz\Zed\Development\Communication\Console\AcceptanceCodeTestConsole;
14
use Pyz\Zed\Development\Communication\Console\ApiCodeTestConsole;
15
use Pyz\Zed\Development\Communication\Console\FunctionalCodeTestConsole;
16
use SecurityChecker\Command\SecurityCheckerCommand;
0 ignored issues
show
Bug introduced by
The type SecurityChecker\Command\SecurityCheckerCommand was not found. Maybe you did not declare it correctly or list all dependencies?

The issue could also be caused by a filter entry in the build configuration. If the path has been excluded in your configuration, e.g. excluded_paths: ["lib/*"], you can move it to the dependency path list as follows:

filter:
    dependency_paths: ["lib/*"]

For further information see https://scrutinizer-ci.com/docs/tools/php/php-scrutinizer/#list-dependency-paths

Loading history...
17
use Spryker\Zed\Cache\Communication\Console\EmptyAllCachesConsole;
18
use Spryker\Zed\CategoryDataImport\CategoryDataImportConfig;
19
use Spryker\Zed\Console\Communication\Plugin\Console\MultiProcessRunConsole;
20
use Spryker\Zed\Console\ConsoleDependencyProvider as SprykerConsoleDependencyProvider;
21
use Spryker\Zed\ContentNavigationDataImport\ContentNavigationDataImportConfig;
22
use Spryker\Zed\CountryDataImport\CountryDataImportConfig;
23
use Spryker\Zed\CurrencyDataImport\CurrencyDataImportConfig;
24
use Spryker\Zed\Customer\Communication\Console\CustomerPasswordResetConsole;
25
use Spryker\Zed\Customer\Communication\Console\CustomerPasswordSetConsole;
26
use Spryker\Zed\CustomerStorage\Communication\Console\DeleteExpiredCustomerInvalidatedRecordsConsole;
27
use Spryker\Zed\DataExport\Communication\Console\DataExportConsole;
28
use Spryker\Zed\DataImport\Communication\Console\DataImportConsole;
29
use Spryker\Zed\DataImport\Communication\Console\DataImportDumpConsole;
30
use Spryker\Zed\Development\Communication\Console\CodeArchitectureSnifferConsole;
31
use Spryker\Zed\Development\Communication\Console\CodeFixturesConsole;
32
use Spryker\Zed\Development\Communication\Console\CodePhpstanConsole;
33
use Spryker\Zed\Development\Communication\Console\CodeStyleSnifferConsole;
34
use Spryker\Zed\Development\Communication\Console\CodeTestConsole;
35
use Spryker\Zed\Development\Communication\Console\GenerateClientIdeAutoCompletionConsole;
36
use Spryker\Zed\Development\Communication\Console\GenerateGlueBackendIdeAutoCompletionConsole;
37
use Spryker\Zed\Development\Communication\Console\GenerateGlueIdeAutoCompletionConsole;
38
use Spryker\Zed\Development\Communication\Console\GenerateIdeAutoCompletionConsole;
39
use Spryker\Zed\Development\Communication\Console\GenerateServiceIdeAutoCompletionConsole;
40
use Spryker\Zed\Development\Communication\Console\GenerateYvesIdeAutoCompletionConsole;
41
use Spryker\Zed\Development\Communication\Console\GenerateZedIdeAutoCompletionConsole;
42
use Spryker\Zed\Development\Communication\Console\PluginUsageFinderConsole;
43
use Spryker\Zed\Development\Communication\Console\RemoveClientIdeAutoCompletionConsole;
44
use Spryker\Zed\Development\Communication\Console\RemoveGlueBackendIdeAutoCompletionConsole;
45
use Spryker\Zed\Development\Communication\Console\RemoveGlueIdeAutoCompletionConsole;
46
use Spryker\Zed\Development\Communication\Console\RemoveIdeAutoCompletionConsole;
47
use Spryker\Zed\Development\Communication\Console\RemoveServiceIdeAutoCompletionConsole;
48
use Spryker\Zed\Development\Communication\Console\RemoveYvesIdeAutoCompletionConsole;
49
use Spryker\Zed\Development\Communication\Console\RemoveZedIdeAutoCompletionConsole;
50
use Spryker\Zed\DocumentationGeneratorRestApi\Communication\Console\GenerateRestApiDocumentationConsole;
51
use Spryker\Zed\Event\Communication\Plugin\Console\EventListenerDumpConsole;
52
use Spryker\Zed\EventBehavior\Communication\Console\EventBehaviorTriggerTimeoutConsole;
53
use Spryker\Zed\EventBehavior\Communication\Console\EventTriggerListenerConsole;
54
use Spryker\Zed\EventBehavior\Communication\Plugin\Console\EventBehaviorPostHookPlugin;
55
use Spryker\Zed\Form\Communication\Plugin\Application\FormApplicationPlugin;
56
use Spryker\Zed\IndexGenerator\Communication\Console\PostgresIndexGeneratorConsole;
57
use Spryker\Zed\IndexGenerator\Communication\Console\PostgresIndexRemoverConsole;
58
use Spryker\Zed\Installer\Communication\Console\InitializeDatabaseConsole;
59
use Spryker\Zed\Kernel\Communication\Console\ResolvableClassCacheConsole;
60
use Spryker\Zed\Kernel\Container;
61
use Spryker\Zed\Locale\Communication\Plugin\Application\ConsoleLocaleApplicationPlugin;
62
use Spryker\Zed\LocaleDataImport\LocaleDataImportConfig;
63
use Spryker\Zed\Log\Communication\Console\DeleteLogFilesConsole;
64
use Spryker\Zed\Maintenance\Communication\Console\MaintenanceDisableConsole;
65
use Spryker\Zed\Maintenance\Communication\Console\MaintenanceEnableConsole;
66
use Spryker\Zed\MessageBroker\Communication\Plugin\Console\MessageBrokerDebugConsole;
67
use Spryker\Zed\MessageBroker\Communication\Plugin\Console\MessageBrokerWorkerConsole;
68
use Spryker\Zed\MessageBrokerAws\Communication\Console\MessageBrokerAwsSnsTopicsCreatorConsole;
69
use Spryker\Zed\MessageBrokerAws\Communication\Console\MessageBrokerAwsSqsQueuesCreatorConsole;
70
use Spryker\Zed\MessageBrokerAws\Communication\Console\MessageBrokerSqsToSnsSubscriberConsole;
71
use Spryker\Zed\Monitoring\Communication\Plugin\Console\MonitoringConsolePlugin;
72
use Spryker\Zed\Oauth\Communication\Console\OauthTokenConsole;
73
use Spryker\Zed\Oauth\Communication\Console\ScopeCacheCollectorConsole;
74
use Spryker\Zed\Oms\Communication\Console\CheckConditionConsole as OmsCheckConditionConsole;
75
use Spryker\Zed\Oms\Communication\Console\CheckTimeoutConsole as OmsCheckTimeoutConsole;
76
use Spryker\Zed\Oms\Communication\Console\ClearLocksConsole as OmsClearLocksConsole;
77
use Spryker\Zed\Oms\Communication\Console\ProcessCacheWarmUpConsole as OmsProcessCacheWarmUpConsole;
78
use Spryker\Zed\Opentelemetry\Communication\Plugin\Console\OpentelemetryGeneratorConsole;
79
use Spryker\Zed\OrderMatrix\Communication\Console\OrderMatrixConsole;
80
use Spryker\Zed\PaymentDataImport\PaymentDataImportConfig;
81
use Spryker\Zed\PriceProduct\Communication\Console\PriceProductStoreOptimizeConsole;
82
use Spryker\Zed\PriceProductDataImport\PriceProductDataImportConfig;
83
use Spryker\Zed\PriceProductSchedule\Communication\Console\PriceProductScheduleApplyConsole;
84
use Spryker\Zed\PriceProductSchedule\Communication\Console\PriceProductScheduleCleanupConsole;
85
use Spryker\Zed\PriceProductScheduleDataImport\PriceProductScheduleDataImportConfig;
86
use Spryker\Zed\ProductAlternativeDataImport\ProductAlternativeDataImportConfig;
87
use Spryker\Zed\ProductConfigurationDataImport\ProductConfigurationDataImportConfig;
88
use Spryker\Zed\ProductDiscontinued\Communication\Console\DeactivateDiscontinuedProductsConsole;
89
use Spryker\Zed\ProductDiscontinuedDataImport\ProductDiscontinuedDataImportConfig;
90
use Spryker\Zed\ProductLabel\Communication\Console\ProductLabelRelationUpdaterConsole;
91
use Spryker\Zed\ProductLabel\Communication\Console\ProductLabelValidityConsole;
92
use Spryker\Zed\ProductLabelDataImport\ProductLabelDataImportConfig;
93
use Spryker\Zed\ProductQuantityDataImport\ProductQuantityDataImportConfig;
94
use Spryker\Zed\ProductRelation\Communication\Console\ProductRelationUpdaterConsole;
95
use Spryker\Zed\ProductRelationDataImport\ProductRelationDataImportConfig;
96
use Spryker\Zed\ProductValidity\Communication\Console\ProductValidityConsole;
97
use Spryker\Zed\Propel\Communication\Console\DatabaseDropConsole;
98
use Spryker\Zed\Propel\Communication\Console\DatabaseDropTablesConsole;
99
use Spryker\Zed\Propel\Communication\Console\DeleteMigrationFilesConsole;
100
use Spryker\Zed\Propel\Communication\Console\DeployPreparePropelConsole;
101
use Spryker\Zed\Propel\Communication\Console\EntityTransferGeneratorConsole;
102
use Spryker\Zed\Propel\Communication\Console\PropelSchemaValidatorConsole;
103
use Spryker\Zed\Propel\Communication\Console\PropelSchemaXmlNameValidatorConsole;
104
use Spryker\Zed\Propel\Communication\Console\RemoveEntityTransferConsole;
105
use Spryker\Zed\Propel\Communication\Plugin\Application\PropelApplicationPlugin;
106
use Spryker\Zed\Publisher\Communication\Console\PublisherTriggerEventsConsole;
107
use Spryker\Zed\PushNotification\Communication\Console\DeleteExpiredPushNotificationSubscriptionConsole;
108
use Spryker\Zed\PushNotification\Communication\Console\SendPushNotificationConsole;
109
use Spryker\Zed\Queue\Communication\Console\QueueDumpConsole;
110
use Spryker\Zed\Queue\Communication\Console\QueueTaskConsole;
111
use Spryker\Zed\Queue\Communication\Console\QueueWorkerConsole;
112
use Spryker\Zed\Quote\Communication\Console\DeleteExpiredGuestQuoteConsole;
113
use Spryker\Zed\RabbitMq\Communication\Console\DeleteAllExchangesConsole;
114
use Spryker\Zed\RabbitMq\Communication\Console\DeleteAllQueuesConsole;
115
use Spryker\Zed\RabbitMq\Communication\Console\PurgeAllQueuesConsole;
116
use Spryker\Zed\RabbitMq\Communication\Console\QueueSetupConsole;
117
use Spryker\Zed\RabbitMq\Communication\Console\SetUserPermissionsConsole;
118
use Spryker\Zed\RestRequestValidator\Communication\Console\BuildRestApiValidationCacheConsole;
119
use Spryker\Zed\RestRequestValidator\Communication\Console\RemoveRestApiValidationCacheConsole;
120
use Spryker\Zed\Router\Communication\Plugin\Console\BackendGatewayRouterCacheWarmUpConsole;
121
use Spryker\Zed\Router\Communication\Plugin\Console\BackofficeRouterCacheWarmUpConsole;
122
use Spryker\Zed\Router\Communication\Plugin\Console\RouterCacheWarmUpConsole;
123
use Spryker\Zed\SalesInvoice\Communication\Console\OrderInvoiceSendConsole;
124
use Spryker\Zed\SalesOms\Communication\Console\ImportOrderItemsStatusConsole;
125
use Spryker\Zed\Scheduler\Communication\Console\SchedulerCleanConsole;
126
use Spryker\Zed\Scheduler\Communication\Console\SchedulerResumeConsole;
127
use Spryker\Zed\Scheduler\Communication\Console\SchedulerSetupConsole;
128
use Spryker\Zed\Scheduler\Communication\Console\SchedulerSuspendConsole;
129
use Spryker\Zed\Search\Communication\Console\GenerateSourceMapConsole;
130
use Spryker\Zed\Search\Communication\Console\RemoveSourceMapConsole;
131
use Spryker\Zed\Search\Communication\Console\SearchConsole;
132
use Spryker\Zed\Search\Communication\Console\SearchSetupSourcesConsole;
133
use Spryker\Zed\SearchElasticsearch\Communication\Console\ElasticsearchCloseIndexConsole;
134
use Spryker\Zed\SearchElasticsearch\Communication\Console\ElasticsearchCopyIndexConsole;
135
use Spryker\Zed\SearchElasticsearch\Communication\Console\ElasticsearchDeleteIndexConsole;
136
use Spryker\Zed\SearchElasticsearch\Communication\Console\ElasticsearchOpenIndexConsole;
137
use Spryker\Zed\SearchElasticsearch\Communication\Console\ElasticsearchSnapshotCreateConsole;
138
use Spryker\Zed\SearchElasticsearch\Communication\Console\ElasticsearchSnapshotDeleteConsole;
139
use Spryker\Zed\SearchElasticsearch\Communication\Console\ElasticsearchSnapshotRegisterRepositoryConsole;
140
use Spryker\Zed\SearchElasticsearch\Communication\Console\ElasticsearchSnapshotRestoreConsole;
141
use Spryker\Zed\Security\Communication\Plugin\Application\ConsoleSecurityApplicationPlugin;
142
use Spryker\Zed\Session\Communication\Console\SessionRemoveLockConsole;
143
use Spryker\Zed\SetupFrontend\Communication\Console\CleanUpDependenciesConsole;
144
use Spryker\Zed\SetupFrontend\Communication\Console\InstallPackageManagerConsole;
145
use Spryker\Zed\SetupFrontend\Communication\Console\InstallProjectDependenciesConsole;
146
use Spryker\Zed\SetupFrontend\Communication\Console\Npm\RunnerConsole;
147
use Spryker\Zed\SetupFrontend\Communication\Console\YvesBuildFrontendConsole;
148
use Spryker\Zed\SetupFrontend\Communication\Console\YvesInstallDependenciesConsole;
149
use Spryker\Zed\SetupFrontend\Communication\Console\ZedBuildFrontendConsole;
150
use Spryker\Zed\SetupFrontend\Communication\Console\ZedInstallDependenciesConsole;
151
use Spryker\Zed\ShipmentDataImport\ShipmentDataImportConfig;
152
use Spryker\Zed\Sitemap\Communication\Console\SitemapGenerateConsole;
153
use Spryker\Zed\StateMachine\Communication\Console\CheckConditionConsole as StateMachineCheckConditionConsole;
154
use Spryker\Zed\StateMachine\Communication\Console\CheckTimeoutConsole as StateMachineCheckTimeoutConsole;
155
use Spryker\Zed\StateMachine\Communication\Console\ClearLocksConsole as StateMachineClearLocksConsole;
156
use Spryker\Zed\StockDataImport\StockDataImportConfig;
157
use Spryker\Zed\Storage\Communication\Console\StorageDeleteAllConsole;
158
use Spryker\Zed\StorageRedis\Communication\Console\StorageRedisDataReSaveConsole;
159
use Spryker\Zed\StorageRedis\Communication\Console\StorageRedisExportRdbConsole;
160
use Spryker\Zed\StorageRedis\Communication\Console\StorageRedisImportRdbConsole;
161
use Spryker\Zed\StoreContextDataImport\StoreContextDataImportConfig;
162
use Spryker\Zed\StoreDataImport\StoreDataImportConfig;
163
use Spryker\Zed\Synchronization\Communication\Console\ExportSynchronizedDataConsole;
164
use Spryker\Zed\Synchronization\Communication\Plugin\Console\DirectSynchronizationConsolePlugin;
165
use Spryker\Zed\Transfer\Communication\Console\DataBuilderGeneratorConsole;
166
use Spryker\Zed\Transfer\Communication\Console\RemoveDataBuilderConsole;
167
use Spryker\Zed\Transfer\Communication\Console\RemoveTransferConsole;
168
use Spryker\Zed\Transfer\Communication\Console\TransferGeneratorConsole;
169
use Spryker\Zed\Transfer\Communication\Console\ValidatorConsole;
170
use Spryker\Zed\Translator\Communication\Console\CleanTranslationCacheConsole;
171
use Spryker\Zed\Translator\Communication\Console\GenerateTranslationCacheConsole;
172
use Spryker\Zed\Twig\Communication\Console\CacheWarmerConsole;
173
use Spryker\Zed\Twig\Communication\Console\TwigTemplateWarmerConsole;
174
use Spryker\Zed\Twig\Communication\Plugin\Application\TwigApplicationPlugin;
175
use Spryker\Zed\Uuid\Communication\Console\UuidGeneratorConsole;
176
use Spryker\Zed\ZedNavigation\Communication\Console\BuildNavigationConsole;
177
use Spryker\Zed\ZedNavigation\Communication\Console\RemoveNavigationCacheConsole;
178
use SprykerSdk\Zed\ComposerConstrainer\Communication\Console\ComposerConstraintConsole;
179
use SprykerShop\Zed\DateTimeConfiguratorPageExample\Communication\Console\DateTimeProductConfiguratorBuildFrontendConsole;
180
181
/**
182
 * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
183
 * @method \Pyz\Zed\Console\ConsoleConfig getConfig()
184
 */
185
class ConsoleDependencyProvider extends SprykerConsoleDependencyProvider
186
{
187
    /**
188
     * @var string
189
     */
190
    protected const COMMAND_SEPARATOR = ':';
191
192
    /**
193
     * @param \Spryker\Zed\Kernel\Container $container
194
     *
195
     * @return array<\Symfony\Component\Console\Command\Command>
196
     */
197
    protected function getConsoleCommands(Container $container): array
198
    {
199
        $commands = [
200
            new OpentelemetryGeneratorConsole(),
201
            new CacheWarmerConsole(),
202
            new TwigTemplateWarmerConsole(),
203
            new BuildNavigationConsole(),
204
            new RemoveNavigationCacheConsole(),
205
            new BuildRestApiValidationCacheConsole(),
206
            new RemoveRestApiValidationCacheConsole(),
207
            new EmptyAllCachesConsole(),
208
            new TransferGeneratorConsole(),
209
            new RemoveTransferConsole(),
210
            new EntityTransferGeneratorConsole(),
211
            new RemoveEntityTransferConsole(),
212
            new InitializeDatabaseConsole(),
213
            new SearchConsole(),
214
            new GenerateSourceMapConsole(),
215
            new RemoveSourceMapConsole(),
216
            new SearchSetupSourcesConsole(),
217
            new OmsCheckConditionConsole(),
218
            new OmsCheckTimeoutConsole(),
219
            new OmsClearLocksConsole(),
220
            new OmsProcessCacheWarmUpConsole(),
221
            new StateMachineCheckTimeoutConsole(),
222
            new StateMachineCheckConditionConsole(),
223
            new StateMachineClearLocksConsole(),
224
            new ImportOrderItemsStatusConsole(),
225
            new SessionRemoveLockConsole(),
226
            new QueueTaskConsole(),
227
            new QueueWorkerConsole(),
228
            new ProductRelationUpdaterConsole(),
229
            new ProductLabelValidityConsole(),
230
            new ProductLabelRelationUpdaterConsole(),
231
            new ProductValidityConsole(),
232
            new OauthTokenConsole(),
233
            new DataImportConsole(),
234
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_STORE),
235
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_CURRENCY),
236
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . CategoryDataImportConfig::IMPORT_TYPE_CATEGORY),
237
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . static::COMMAND_SEPARATOR . CategoryDataImportConfig::IMPORT_TYPE_CATEGORY_STORE),
238
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_CATEGORY_TEMPLATE),
239
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_CUSTOMER),
240
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_GLOSSARY),
241
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_NAVIGATION),
242
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_NAVIGATION_NODE),
243
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_CMS_TEMPLATE),
244
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_CMS_BLOCK),
245
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_CMS_BLOCK_STORE),
246
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_DISCOUNT),
247
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_DISCOUNT_STORE),
248
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_DISCOUNT_VOUCHER),
249
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_ABSTRACT),
250
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_ABSTRACT_STORE),
251
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_CONCRETE),
252
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_IMAGE),
253
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_STOCK),
254
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_ATTRIBUTE_KEY),
255
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_MANAGEMENT_ATTRIBUTE),
256
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_GROUP),
257
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_OPTION),
258
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_OPTION_PRICE),
259
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_REVIEW),
260
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ProductLabelDataImportConfig::IMPORT_TYPE_PRODUCT_LABEL),
261
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ProductLabelDataImportConfig::IMPORT_TYPE_PRODUCT_LABEL_STORE),
262
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_SET),
263
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_SEARCH_ATTRIBUTE_MAP),
264
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_PRODUCT_SEARCH_ATTRIBUTE),
265
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ShipmentDataImportConfig::IMPORT_TYPE_SHIPMENT),
266
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ShipmentDataImportConfig::IMPORT_TYPE_SHIPMENT_PRICE),
267
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_TAX),
268
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_DISCOUNT_AMOUNT),
269
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ProductAlternativeDataImportConfig::IMPORT_TYPE_PRODUCT_ALTERNATIVE), #ProductAlternativeFeature
270
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ProductDiscontinuedDataImportConfig::IMPORT_TYPE_PRODUCT_DISCONTINUED),
271
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . PriceProductScheduleDataImportConfig::IMPORT_TYPE_PRODUCT_PRICE_SCHEDULE),
272
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_ABSTRACT_GIFT_CARD_CONFIGURATION), #GiftCardFeature
273
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . DataImportConfig::IMPORT_TYPE_CONCRETE_GIFT_CARD_CONFIGURATION),
274
275
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ShipmentDataImportConfig::IMPORT_TYPE_SHIPMENT),
276
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ShipmentDataImportConfig::IMPORT_TYPE_SHIPMENT_PRICE),
277
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ShipmentDataImportConfig::IMPORT_TYPE_SHIPMENT_METHOD_STORE),
278
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . StockDataImportConfig::IMPORT_TYPE_STOCK),
279
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . StockDataImportConfig::IMPORT_TYPE_STOCK_STORE),
280
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ContentNavigationDataImportConfig::IMPORT_TYPE_CONTENT_NAVIGATION),
281
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . PaymentDataImportConfig::IMPORT_TYPE_PAYMENT_METHOD),
282
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . PaymentDataImportConfig::IMPORT_TYPE_PAYMENT_METHOD_STORE),
283
284
            //core data importers
285
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . PriceProductDataImportConfig::IMPORT_TYPE_PRODUCT_PRICE),
286
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ProductQuantityDataImportConfig::IMPORT_TYPE_PRODUCT_QUANTITY),
287
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ProductRelationDataImportConfig::IMPORT_TYPE_PRODUCT_RELATION),
288
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ProductRelationDataImportConfig::IMPORT_TYPE_PRODUCT_RELATION_STORE),
289
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . ProductConfigurationDataImportConfig::IMPORT_TYPE_PRODUCT_CONFIGURATION),
290
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . CountryDataImportConfig::IMPORT_TYPE_COUNTRY_STORE),
291
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . CurrencyDataImportConfig::IMPORT_TYPE_CURRENCY_STORE),
292
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . LocaleDataImportConfig::IMPORT_TYPE_LOCALE_STORE),
293
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . LocaleDataImportConfig::IMPORT_TYPE_DEFAULT_LOCALE_STORE),
294
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . static::COMMAND_SEPARATOR . StoreContextDataImportConfig::IMPORT_TYPE_STORE_CONTEXT),
295
            new DataImportConsole(DataImportConsole::DEFAULT_NAME . ':' . StoreDataImportConfig::IMPORT_TYPE_STORE),
296
297
            // Publish and Synchronization
298
            new EventBehaviorTriggerTimeoutConsole(),
299
            new PublisherTriggerEventsConsole(),
300
            new ExportSynchronizedDataConsole(),
301
302
            // Setup commands
303
            new RunnerConsole(),
0 ignored issues
show
Deprecated Code introduced by
The class Spryker\Zed\SetupFronten...nsole\Npm\RunnerConsole has been deprecated: Will be removed without replacement. Use `frontend:yves:build` for build Yves frontend. Use `frontend:zed:build` for build Zed frontend. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-deprecated  annotation

303
            /** @scrutinizer ignore-deprecated */ new RunnerConsole(),
Loading history...
304
            new DeployPreparePropelConsole(),
305
306
            new DatabaseDropConsole(),
307
            new DatabaseDropTablesConsole(),
308
            new DeleteMigrationFilesConsole(),
309
310
            new DeleteLogFilesConsole(),
311
            new StorageRedisExportRdbConsole(),
312
            new StorageRedisImportRdbConsole(),
313
            new StorageDeleteAllConsole(),
314
            new ElasticsearchCloseIndexConsole(),
315
            new ElasticsearchCopyIndexConsole(),
316
            new ElasticsearchDeleteIndexConsole(),
317
            new ElasticsearchOpenIndexConsole(),
318
            new ElasticsearchSnapshotRegisterRepositoryConsole(),
319
            new ElasticsearchSnapshotDeleteConsole(),
320
            new ElasticsearchSnapshotCreateConsole(),
321
            new ElasticsearchSnapshotRestoreConsole(),
322
323
            new InstallPackageManagerConsole(),
324
            new CleanUpDependenciesConsole(),
325
            new InstallProjectDependenciesConsole(),
326
327
            new YvesInstallDependenciesConsole(),
0 ignored issues
show
Deprecated Code introduced by
The class Spryker\Zed\SetupFronten...tallDependenciesConsole has been deprecated: In next major all dependencies will be installed via {@see InstallProjectDependenciesConsole} ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-deprecated  annotation

327
            /** @scrutinizer ignore-deprecated */ new YvesInstallDependenciesConsole(),
Loading history...
328
            new YvesBuildFrontendConsole(),
329
330
            new ZedInstallDependenciesConsole(),
0 ignored issues
show
Deprecated Code introduced by
The class Spryker\Zed\SetupFronten...tallDependenciesConsole has been deprecated: In next major all dependencies will be installed via {@see InstallProjectDependenciesConsole} ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-deprecated  annotation

330
            /** @scrutinizer ignore-deprecated */ new ZedInstallDependenciesConsole(),
Loading history...
331
            new ZedBuildFrontendConsole(),
332
333
            new DeleteAllQueuesConsole(),
334
            new PurgeAllQueuesConsole(),
335
            new DeleteAllExchangesConsole(),
336
            new QueueSetupConsole(),
337
            new SetUserPermissionsConsole(),
338
339
            new DeactivateDiscontinuedProductsConsole(), #ProductDiscontinuedFeature
340
341
            new PriceProductStoreOptimizeConsole(),
342
343
            new UuidGeneratorConsole(),
344
            new DeleteExpiredGuestQuoteConsole(),
345
            new DeleteExpiredCustomerInvalidatedRecordsConsole(),
346
            new BuildRestApiValidationCacheConsole(),
347
            new RemoveRestApiValidationCacheConsole(),
348
349
            new CleanTranslationCacheConsole(),
350
            new GenerateTranslationCacheConsole(),
351
352
            new PriceProductScheduleApplyConsole(),
353
            new PriceProductScheduleCleanupConsole(),
354
355
            new SchedulerSetupConsole(),
356
            new SchedulerCleanConsole(),
357
            new SchedulerSuspendConsole(),
358
            new SchedulerResumeConsole(),
359
360
            new RouterCacheWarmUpConsole(),
361
362
            new BackofficeRouterCacheWarmUpConsole(),
363
            new BackendGatewayRouterCacheWarmUpConsole(),
364
            new ResolvableClassCacheConsole(),
365
366
            new DataExportConsole(),
367
            new CustomerPasswordResetConsole(),
368
            new CustomerPasswordSetConsole(),
369
370
            new OrderInvoiceSendConsole(),
371
            new MessageBrokerWorkerConsole(),
372
373
            new ScopeCacheCollectorConsole(),
374
375
            new DateTimeProductConfiguratorBuildFrontendConsole(),
376
377
            new DeleteExpiredPushNotificationSubscriptionConsole(),
378
            new SendPushNotificationConsole(),
379
            new OrderMatrixConsole(),
380
            new StorageRedisDataReSaveConsole(),
381
            new SitemapGenerateConsole(),
382
        ];
383
384
        $propelCommands = $container->getLocator()->propel()->facade()->getConsoleCommands();
385
        $commands = array_merge($commands, $propelCommands);
386
387
        if ($this->getConfig()->isDevelopmentConsoleCommandsEnabled()) {
388
            $commands[] = new EventListenerDumpConsole();
389
            $commands[] = new CodeTestConsole();
390
            $commands[] = new CodeFixturesConsole();
391
            $commands[] = new AcceptanceCodeTestConsole();
392
            $commands[] = new FunctionalCodeTestConsole();
393
            $commands[] = new ApiCodeTestConsole();
394
            $commands[] = new CodeStyleSnifferConsole();
395
            $commands[] = new CodeArchitectureSnifferConsole();
396
            $commands[] = new CodePhpstanConsole();
397
            $commands[] = new ValidatorConsole();
398
            $commands[] = new GenerateZedIdeAutoCompletionConsole();
399
            $commands[] = new RemoveZedIdeAutoCompletionConsole();
400
            $commands[] = new GenerateClientIdeAutoCompletionConsole();
401
            $commands[] = new RemoveClientIdeAutoCompletionConsole();
402
            $commands[] = new GenerateServiceIdeAutoCompletionConsole();
403
            $commands[] = new RemoveServiceIdeAutoCompletionConsole();
404
            $commands[] = new GenerateYvesIdeAutoCompletionConsole();
405
            $commands[] = new RemoveYvesIdeAutoCompletionConsole();
406
            $commands[] = new GenerateIdeAutoCompletionConsole();
407
            $commands[] = new RemoveIdeAutoCompletionConsole();
408
            $commands[] = new GenerateGlueIdeAutoCompletionConsole();
409
            $commands[] = new RemoveGlueIdeAutoCompletionConsole();
410
            $commands[] = new DataBuilderGeneratorConsole();
411
            $commands[] = new RemoveDataBuilderConsole();
412
            $commands[] = new DataBuilderGeneratorConsole();
413
            $commands[] = new PropelSchemaValidatorConsole();
414
            $commands[] = new PropelSchemaXmlNameValidatorConsole();
415
            $commands[] = new DataImportDumpConsole();
416
            $commands[] = new GenerateGlueIdeAutoCompletionConsole();
417
            $commands[] = new RemoveGlueIdeAutoCompletionConsole();
418
            $commands[] = new GenerateGlueBackendIdeAutoCompletionConsole();
419
            $commands[] = new RemoveGlueBackendIdeAutoCompletionConsole();
420
            $commands[] = new PluginUsageFinderConsole();
421
            $commands[] = new PostgresIndexGeneratorConsole();
422
            $commands[] = new PostgresIndexRemoverConsole();
423
            $commands[] = new GenerateRestApiDocumentationConsole();
424
            $commands[] = new QueueDumpConsole();
425
            $commands[] = new EventTriggerListenerConsole();
426
427
            $commands[] = new ComposerConstraintConsole();
428
429
            $commands[] = new MessageBrokerDebugConsole();
430
            $commands[] = new MessageBrokerAwsSqsQueuesCreatorConsole();
0 ignored issues
show
Deprecated Code introduced by
The class Spryker\Zed\MessageBroke...SqsQueuesCreatorConsole has been deprecated: Will be removed without replacement. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-deprecated  annotation

430
            $commands[] = /** @scrutinizer ignore-deprecated */ new MessageBrokerAwsSqsQueuesCreatorConsole();
Loading history...
431
            $commands[] = new MessageBrokerAwsSnsTopicsCreatorConsole();
0 ignored issues
show
Deprecated Code introduced by
The class Spryker\Zed\MessageBroke...SnsTopicsCreatorConsole has been deprecated: Will be removed without replacement. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-deprecated  annotation

431
            $commands[] = /** @scrutinizer ignore-deprecated */ new MessageBrokerAwsSnsTopicsCreatorConsole();
Loading history...
432
            $commands[] = new MessageBrokerSqsToSnsSubscriberConsole();
0 ignored issues
show
Deprecated Code introduced by
The class Spryker\Zed\MessageBroke...sToSnsSubscriberConsole has been deprecated: Will be removed without replacement. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-deprecated  annotation

432
            $commands[] = /** @scrutinizer ignore-deprecated */ new MessageBrokerSqsToSnsSubscriberConsole();
Loading history...
433
            $commands[] = new MultiProcessRunConsole();
434
435
            if (class_exists(SecurityCheckerCommand::class)) {
436
                $commands[] = new SecurityCheckerCommand();
437
            }
438
439
            $commands[] = new MaintenanceEnableConsole();
440
            $commands[] = new MaintenanceDisableConsole();
441
        }
442
443
        return $commands;
444
    }
445
446
    /**
447
     * @param \Spryker\Zed\Kernel\Container $container
448
     *
449
     * @return array<\Spryker\Zed\Console\Dependency\Plugin\ConsolePostRunHookPluginInterface>
450
     */
451
    public function getConsolePostRunHookPlugins(Container $container): array // phpcs:ignore SlevomatCodingStandard.Functions.UnusedParameter
452
    {
453
        return [
454
            new EventBehaviorPostHookPlugin(),
455
        ];
456
    }
457
458
    /**
459
     * @param \Spryker\Zed\Kernel\Container $container
460
     *
461
     * @return array<\Spryker\Shared\ApplicationExtension\Dependency\Plugin\ApplicationPluginInterface>
462
     */
463
    public function getApplicationPlugins(Container $container): array
464
    {
465
        $applicationPlugins = parent::getApplicationPlugins($container);
466
467
        $applicationPlugins[] = new ConsoleLocaleApplicationPlugin();
468
        $applicationPlugins[] = new ConsoleSecurityApplicationPlugin();
469
        $applicationPlugins[] = new PropelApplicationPlugin();
470
        $applicationPlugins[] = new TwigApplicationPlugin();
471
        $applicationPlugins[] = new FormApplicationPlugin();
472
473
        return $applicationPlugins;
474
    }
475
476
    /**
477
     * @param \Spryker\Zed\Kernel\Container $container
478
     *
479
     * @return array<\Symfony\Component\EventDispatcher\EventSubscriberInterface>
480
     */
481
    public function getEventSubscriber(Container $container): array
482
    {
483
        $eventSubscriber = parent::getEventSubscriber($container);
484
        $eventSubscriber[] = new MonitoringConsolePlugin();
485
        $eventSubscriber[] = new DirectSynchronizationConsolePlugin();
486
487
        return $eventSubscriber;
488
    }
489
}
490