From 96dcee24a352d576d8851fbc1253e1177940f749 Mon Sep 17 00:00:00 2001 From: vol4onok Date: Thu, 20 Jun 2024 19:54:15 +0300 Subject: [PATCH 01/17] ACP-3340: Create logic to send message to a tenant for changing config --- composer.json | 1 + .../Transfer/app_kernel.transfer.xml | 8 ++ src/Spryker/Zed/AppKernel/AppKernelConfig.php | 11 ++ .../AppKernel/AppKernelDependencyProvider.php | 22 ++++ .../Business/AppKernelBusinessFactory.php | 19 +++ .../AppKernel/Business/AppKernelFacade.php | 32 ++++++ .../Business/AppKernelFacadeInterface.php | 26 +++++ .../Business/MessageSender/MessageSender.php | 108 ++++++++++++++++++ .../MessageSender/MessageSenderInterface.php | 28 +++++ ...outChangedConfigurationAfterSavePlugin.php | 34 ++++++ ...tDeletedConfigurationAfterDeletePlugin.php | 34 ++++++ .../AppKernelToMessageBrokerFacadeBridge.php | 38 ++++++ ...ppKernelToMessageBrokerFacadeInterface.php | 21 ++++ 13 files changed, 382 insertions(+) create mode 100644 src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php create mode 100644 src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php create mode 100644 src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutChangedConfigurationAfterSavePlugin.php create mode 100644 src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php create mode 100644 src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeBridge.php create mode 100644 src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeInterface.php diff --git a/composer.json b/composer.json index bf1d592..5bab9d4 100644 --- a/composer.json +++ b/composer.json @@ -9,6 +9,7 @@ "spryker/glue-application-extension": "^1.0.0", "spryker/kernel": "^3.30.0", "spryker/log": "^3.0.0", + "spryker/message-broker": "^1.11.0", "spryker/propel-encryption-behavior": "^0.1.1", "spryker/secrets-manager": "^1.0.0", "spryker/secrets-manager-extension": "^1.0.0", diff --git a/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml b/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml index 00817d1..6f7815d 100644 --- a/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml +++ b/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml @@ -9,6 +9,14 @@ + + + + + + + + diff --git a/src/Spryker/Zed/AppKernel/AppKernelConfig.php b/src/Spryker/Zed/AppKernel/AppKernelConfig.php index 2cba5e8..0018323 100644 --- a/src/Spryker/Zed/AppKernel/AppKernelConfig.php +++ b/src/Spryker/Zed/AppKernel/AppKernelConfig.php @@ -7,6 +7,7 @@ namespace Spryker\Zed\AppKernel; +use Spryker\Shared\AppKernel\AppKernelConstants; use Spryker\Zed\Kernel\AbstractBundleConfig; class AppKernelConfig extends AbstractBundleConfig @@ -20,4 +21,14 @@ class AppKernelConfig extends AbstractBundleConfig * @var string */ public const APP_STATUS_CONNECTED = 'CONNECTED'; + + /** + * @api + * + * @return string + */ + public function getAppIdentifier(): string + { + return $this->get(AppKernelConstants::APP_IDENTIFIER); + } } diff --git a/src/Spryker/Zed/AppKernel/AppKernelDependencyProvider.php b/src/Spryker/Zed/AppKernel/AppKernelDependencyProvider.php index 9304bab..119ef75 100644 --- a/src/Spryker/Zed/AppKernel/AppKernelDependencyProvider.php +++ b/src/Spryker/Zed/AppKernel/AppKernelDependencyProvider.php @@ -8,6 +8,8 @@ namespace Spryker\Zed\AppKernel; use Spryker\Zed\AppKernel\Dependency\Client\AppKernelToSecretsManagerClientBridge; +use Spryker\Zed\AppKernel\Dependency\Facade\AppKernelToMessageBrokerFacadeBridge; +use Spryker\Zed\AppKernel\Dependency\Facade\AppKernelToMessageBrokerFacadeInterface; use Spryker\Zed\AppKernel\Dependency\Service\AppKernelToUtilEncodingServiceBridge; use Spryker\Zed\AppKernel\Dependency\Service\AppKernelToUtilTextServiceBridge; use Spryker\Zed\Kernel\AbstractBundleDependencyProvider; @@ -18,6 +20,11 @@ */ class AppKernelDependencyProvider extends AbstractBundleDependencyProvider { + /** + * @var string + */ + public const FACADE_MESSAGE_BROKER = 'APP_KERNEL:FACADE_MESSAGE_BROKER'; + /** * @var string */ @@ -61,6 +68,7 @@ class AppKernelDependencyProvider extends AbstractBundleDependencyProvider public function provideBusinessLayerDependencies(Container $container): Container { $container = parent::provideBusinessLayerDependencies($container); + $container = $this->addMessageBrokerFacade($container); $container = $this->addSecretsManagerClient($container); $container = $this->addUtilTextService($container); $container = $this->addUtilEncodingService($container); @@ -85,6 +93,20 @@ public function providePersistenceLayerDependencies(Container $container): Conta return $container; } + /** + * @param \Spryker\Zed\Kernel\Container $container + * + * @return \Spryker\Zed\Kernel\Container + */ + protected function addMessageBrokerFacade(Container $container): Container + { + $container->set(static::FACADE_MESSAGE_BROKER, static function (Container $container): AppKernelToMessageBrokerFacadeInterface { + return new AppKernelToMessageBrokerFacadeBridge($container->getLocator()->messageBroker()->facade()); + }); + + return $container; + } + /** * @param \Spryker\Zed\Kernel\Container $container * diff --git a/src/Spryker/Zed/AppKernel/Business/AppKernelBusinessFactory.php b/src/Spryker/Zed/AppKernel/Business/AppKernelBusinessFactory.php index e541bdf..74b3de3 100644 --- a/src/Spryker/Zed/AppKernel/Business/AppKernelBusinessFactory.php +++ b/src/Spryker/Zed/AppKernel/Business/AppKernelBusinessFactory.php @@ -12,6 +12,8 @@ use Spryker\Zed\AppKernel\Business\Deleter\ConfigDeleterInterface; use Spryker\Zed\AppKernel\Business\EncryptionConfigurator\PropelEncryptionConfigurator; use Spryker\Zed\AppKernel\Business\EncryptionConfigurator\PropelEncryptionConfiguratorInterface; +use Spryker\Zed\AppKernel\Business\MessageSender\MessageSender; +use Spryker\Zed\AppKernel\Business\MessageSender\MessageSenderInterface; use Spryker\Zed\AppKernel\Business\Reader\ConfigReader; use Spryker\Zed\AppKernel\Business\Reader\ConfigReaderInterface; use Spryker\Zed\AppKernel\Business\SecretsManager\SecretsManager; @@ -19,6 +21,7 @@ use Spryker\Zed\AppKernel\Business\Writer\ConfigWriter; use Spryker\Zed\AppKernel\Business\Writer\ConfigWriterInterface; use Spryker\Zed\AppKernel\Dependency\Client\AppKernelToSecretsManagerClientInterface; +use Spryker\Zed\AppKernel\Dependency\Facade\AppKernelToMessageBrokerFacadeInterface; use Spryker\Zed\AppKernel\Dependency\Service\AppKernelToUtilTextServiceInterface; use Spryker\Zed\Kernel\Business\AbstractBusinessFactory; @@ -87,6 +90,14 @@ public function createSecretsManager(): SecretsManagerInterface ); } + /** + * @return \Spryker\Zed\AppKernel\Business\MessageSender\MessageSenderInterface + */ + public function createMessageSender(): MessageSenderInterface + { + return new MessageSender($this->getMessageBrokerFacade(), $this->getConfig()); + } + /** * @return \Spryker\Zed\AppKernel\Dependency\Client\AppKernelToSecretsManagerClientInterface */ @@ -134,4 +145,12 @@ public function getConfigurationAfterDeletePlugins(): array { return $this->getProvidedDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_AFTER_DELETE_PLUGINS); } + + /** + * @return \Spryker\Zed\AppKernel\Dependency\Facade\AppKernelToMessageBrokerFacadeInterface + */ + public function getMessageBrokerFacade(): AppKernelToMessageBrokerFacadeInterface + { + return $this->getProvidedDependency(AppKernelDependencyProvider::FACADE_MESSAGE_BROKER); + } } diff --git a/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php b/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php index f237cc6..41d33f9 100644 --- a/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php +++ b/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php @@ -70,4 +70,36 @@ public function getConfig(AppConfigCriteriaTransfer $appConfigCriteriaTransfer, { return $this->getFactory()->createConfigReader()->getAppConfigByCriteria($appConfigCriteriaTransfer, $transfer); } + + /** + * {@inheritDoc} + * + * @api + * + * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer + * + * @return \Generated\Shared\Transfer\AppConfigTransfer + */ + public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConfigTransfer): AppConfigTransfer + { + return $this->getFactory() + ->createMessageSender() + ->informTenantAboutChangedConfiguration($appConfigTransfer); + } + + /** + * {@inheritDoc} + * + * @api + * + * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer + * + * @return \Generated\Shared\Transfer\AppDisconnectTransfer + */ + public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer + { + return $this->getFactory() + ->createMessageSender() + ->informTenantAboutDeletedConfiguration($appDisconnectTransfer); + } } diff --git a/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php b/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php index 8730cac..58dbcef 100644 --- a/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php @@ -74,4 +74,30 @@ public function deleteConfig(AppDisconnectTransfer $appDisconnectTransfer): AppD * @return T */ public function getConfig(AppConfigCriteriaTransfer $appConfigCriteriaTransfer, TransferInterface $transfer): TransferInterface; + + /** + * Specification: + * - Sends a message to the tenant about the changed configuration. + * - Returns the unchanged AppConfigTransfer (Only used). + * + * @api + * + * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer + * + * @return \Generated\Shared\Transfer\AppConfigTransfer + */ + public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConfigTransfer): AppConfigTransfer; + + /** + * Specification: + * - Sends a message to the tenant about the removed configuration. + * - Returns the unchanged AppDisconnectTransfer (Only used). + * + * @api + * + * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer + * + * @return \Generated\Shared\Transfer\AppDisconnectTransfer + */ + public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer; } diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php new file mode 100644 index 0000000..ab88831 --- /dev/null +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php @@ -0,0 +1,108 @@ +messageBrokerFacade = $messageBrokerFacade; + $this->config = $config; + } + + /** + * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer + * + * @return \Generated\Shared\Transfer\AppConfigTransfer + */ + public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConfigTransfer): AppConfigTransfer + { + $status = false; + if ( + $appConfigTransfer->getStatus() === AppKernelConfig::APP_STATUS_CONNECTED && + ($appConfigTransfer->getIsActive() === null || $appConfigTransfer->getIsActive() === true) + ) { + $status = true; + } + $appStatusChangedTransfer = new AppStatusChangedTransfer(); + $appStatusChangedTransfer + ->setAppIdentifier($this->config->getAppIdentifier()) + ->setStatus($status); + + $appStatusChangedTransfer->setMessageAttributes($this->getMessageAttributes( + $appConfigTransfer->getTenantIdentifierOrFail(), + $appConfigTransfer::class, + )); + + $this->messageBrokerFacade->sendMessage($appStatusChangedTransfer); + + return $appConfigTransfer; + } + + /** + * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer + * + * @return \Generated\Shared\Transfer\AppConfigTransfer + */ + public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppConfigTransfer + { + $appStatusChangedTransfer = new AppStatusChangedTransfer(); + $appStatusChangedTransfer + ->setAppIdentifier($this->config->getAppIdentifier()) + ->setStatus(false); + + $appStatusChangedTransfer->setMessageAttributes($this->getMessageAttributes( + $appDisconnectTransfer->getTenantIdentifierOrFail(), + $appStatusChangedTransfer::class, + )); + + $this->messageBrokerFacade->sendMessage($appStatusChangedTransfer); + + return $appDisconnectTransfer; + } + + /** + * @param string $tenantIdentifier + * @param string $transferName + * + * @return \Generated\Shared\Transfer\MessageAttributesTransfer + */ + protected function getMessageAttributes(string $tenantIdentifier, string $transferName): MessageAttributesTransfer + { + $messageAttributesTransfer = new MessageAttributesTransfer(); + $messageAttributesTransfer + ->setActorId($this->config->getAppIdentifier()) + ->setEmitter($this->config->getAppIdentifier()) + ->setTenantIdentifier($tenantIdentifier) + ->setStoreReference($tenantIdentifier) + ->setTransferName($transferName); + + return $messageAttributesTransfer; + } +} diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php new file mode 100644 index 0000000..c038652 --- /dev/null +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php @@ -0,0 +1,28 @@ +getFacade()->informTenantAboutChangedConfiguration($appConfigTransfer); + } +} diff --git a/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php b/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php new file mode 100644 index 0000000..cd1b04e --- /dev/null +++ b/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php @@ -0,0 +1,34 @@ +getFacade()->informTenantAboutDeletedConfiguration($appDisconnectTransfer); + } +} diff --git a/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeBridge.php b/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeBridge.php new file mode 100644 index 0000000..8e23d62 --- /dev/null +++ b/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeBridge.php @@ -0,0 +1,38 @@ +messageBrokerFacade = $messageBrokerFacade; + } + + /** + * @param \Spryker\Shared\Kernel\Transfer\TransferInterface $messageTransfer + * + * @return \Generated\Shared\Transfer\MessageResponseTransfer + */ + public function sendMessage(TransferInterface $messageTransfer): MessageResponseTransfer + { + return $this->messageBrokerFacade->sendMessage($messageTransfer); + } +} diff --git a/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeInterface.php b/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeInterface.php new file mode 100644 index 0000000..3a30db1 --- /dev/null +++ b/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeInterface.php @@ -0,0 +1,21 @@ + Date: Thu, 20 Jun 2024 20:01:47 +0300 Subject: [PATCH 02/17] ACP-3340: Create logic to send message to a tenant for changing config --- .../Zed/AppKernel/Business/MessageSender/MessageSender.php | 4 ++-- .../Business/MessageSender/MessageSenderInterface.php | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php index ab88831..da67117 100644 --- a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php @@ -68,9 +68,9 @@ public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConf /** * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer * - * @return \Generated\Shared\Transfer\AppConfigTransfer + * @return \Generated\Shared\Transfer\AppDisconnectTransfer */ - public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppConfigTransfer + public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer { $appStatusChangedTransfer = new AppStatusChangedTransfer(); $appStatusChangedTransfer diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php index c038652..30513c8 100644 --- a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php @@ -22,7 +22,7 @@ public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConf /** * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer * - * @return \Generated\Shared\Transfer\AppConfigTransfer + * @return \Generated\Shared\Transfer\AppDisconnectTransfer */ - public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppConfigTransfer; + public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer; } From 168adc0c311ea9a2337e09ebb27de413d044a001 Mon Sep 17 00:00:00 2001 From: vol4onok Date: Thu, 20 Jun 2024 20:04:57 +0300 Subject: [PATCH 03/17] ACP-3340: Create logic to send message to a tenant for changing config --- .../Zed/AppKernel/Business/MessageSender/MessageSender.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php index da67117..db07ea2 100644 --- a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php @@ -19,7 +19,7 @@ class MessageSender implements MessageSenderInterface /** * @var \Spryker\Zed\AppKernel\Dependency\Facade\AppKernelToMessageBrokerFacadeInterface */ - private AppKernelToMessageBrokerFacadeInterface $messageBrokerFacade; + protected AppKernelToMessageBrokerFacadeInterface $messageBrokerFacade; /** * @var \Spryker\Zed\AppKernel\AppKernelConfig @@ -30,7 +30,7 @@ class MessageSender implements MessageSenderInterface * @param \Spryker\Zed\AppKernel\Dependency\Facade\AppKernelToMessageBrokerFacadeInterface $messageBrokerFacade * @param \Spryker\Zed\AppKernel\AppKernelConfig $config */ - public function __construct(AppKernelToMessageBrokerFacadeInterface $messageBrokerFacade, AppKernelConfig $config) + public function __construct(protected AppKernelToMessageBrokerFacadeInterface $messageBrokerFacade, protected AppKernelConfig $config) { $this->messageBrokerFacade = $messageBrokerFacade; $this->config = $config; From 4497a0530edf24a8a6c9444c335b90c08912c20c Mon Sep 17 00:00:00 2001 From: vol4onok Date: Thu, 20 Jun 2024 20:07:46 +0300 Subject: [PATCH 04/17] ACP-3340: Fixed cs --- .../Business/MessageSender/MessageSender.php | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php index db07ea2..af7aff5 100644 --- a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php @@ -16,24 +16,12 @@ class MessageSender implements MessageSenderInterface { - /** - * @var \Spryker\Zed\AppKernel\Dependency\Facade\AppKernelToMessageBrokerFacadeInterface - */ - protected AppKernelToMessageBrokerFacadeInterface $messageBrokerFacade; - - /** - * @var \Spryker\Zed\AppKernel\AppKernelConfig - */ - protected AppKernelConfig $config; - /** * @param \Spryker\Zed\AppKernel\Dependency\Facade\AppKernelToMessageBrokerFacadeInterface $messageBrokerFacade * @param \Spryker\Zed\AppKernel\AppKernelConfig $config */ public function __construct(protected AppKernelToMessageBrokerFacadeInterface $messageBrokerFacade, protected AppKernelConfig $config) { - $this->messageBrokerFacade = $messageBrokerFacade; - $this->config = $config; } /** From ffbe2853df71a3bd58b0517a4d725ddc7e4281f0 Mon Sep 17 00:00:00 2001 From: vol4onok Date: Thu, 20 Jun 2024 21:39:16 +0300 Subject: [PATCH 05/17] ACP-3340: updated async.yml --- resources/api/asyncapi.yml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/resources/api/asyncapi.yml b/resources/api/asyncapi.yml index 5cacd00..67b6c1b 100644 --- a/resources/api/asyncapi.yml +++ b/resources/api/asyncapi.yml @@ -9,6 +9,10 @@ channels: oneOf: - $ref: '#/components/messages/ConfigureApp' - $ref: '#/components/messages/DeleteApp' + publish: + message: + oneOf: + - $ref: '#/components/messages/AppStatusChanged' components: messages: ConfigureApp: @@ -32,6 +36,16 @@ components: $ref: '#/components/schemas/message-broker/components/schemas/headers' payload: $ref: '#/components/schemas/AppDisconnect' + AppStatusChanged: + x-spryker: + module: AppConfig + name: AppStatusChanged + title: Update App config Command + summary: 'Request to update app config for tenant.' + payload: + $ref: '#/components/schemas/sales-payment/schemas/AppStatusChanged' + headers: + $ref: '#/components/schemas/message-broker/components/schemas/headers' schemas: AppConfiguration: type: object @@ -53,5 +67,14 @@ components: description: The app identifier to identify the PBC. required: - appIdentifier + AppStatusChanged: + type: object + properties: + appIdentifier: + type: string + description: The app identifier to identify the PBC. + required: + - appIdentifier + - status message-broker: $ref: 'https://raw.githubusercontent.com/spryker/message-broker/1.6.0/resources/api/template.yml' From 6ed7712a4857b5691058e26afc808b6be8ee81f2 Mon Sep 17 00:00:00 2001 From: vol4onok Date: Thu, 20 Jun 2024 21:43:59 +0300 Subject: [PATCH 06/17] ACP-3340: updated async.yml --- resources/api/asyncapi.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/resources/api/asyncapi.yml b/resources/api/asyncapi.yml index 67b6c1b..1555b2c 100644 --- a/resources/api/asyncapi.yml +++ b/resources/api/asyncapi.yml @@ -43,7 +43,7 @@ components: title: Update App config Command summary: 'Request to update app config for tenant.' payload: - $ref: '#/components/schemas/sales-payment/schemas/AppStatusChanged' + $ref: '#/components/schemas/AppStatusChanged' headers: $ref: '#/components/schemas/message-broker/components/schemas/headers' schemas: @@ -73,6 +73,9 @@ components: appIdentifier: type: string description: The app identifier to identify the PBC. + status: + type: boolean + description: The status of PBC (enabled, disabled). required: - appIdentifier - status From 08945eeb0d9c57dd4f11773c776c54a737f3e556 Mon Sep 17 00:00:00 2001 From: vol4onok Date: Fri, 21 Jun 2024 16:50:17 +0300 Subject: [PATCH 07/17] ACP-3340: updated event object --- .../propel/generated-conf/loadDatabase.php | 6 ++-- resources/api/asyncapi.yml | 11 +++--- .../Transfer/app_kernel.transfer.xml | 2 +- .../AppKernel/Business/AppKernelFacade.php | 16 --------- .../Business/AppKernelFacadeInterface.php | 13 ------- .../Business/MessageSender/MessageSender.php | 33 +++--------------- .../MessageSender/MessageSenderInterface.php | 8 ----- ...tDeletedConfigurationAfterDeletePlugin.php | 34 ------------------- 8 files changed, 15 insertions(+), 108 deletions(-) delete mode 100644 src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php diff --git a/data/cache/propel/generated-conf/loadDatabase.php b/data/cache/propel/generated-conf/loadDatabase.php index 9f3d9c3..1381b51 100644 --- a/data/cache/propel/generated-conf/loadDatabase.php +++ b/data/cache/propel/generated-conf/loadDatabase.php @@ -1,9 +1,9 @@ initDatabaseMapFromDumps(array ( - 'zed' => + 'zed' => array ( - 'tablesByName' => + 'tablesByName' => array ( 'spy_app_config' => '\\Orm\\Zed\\AppKernel\\Persistence\\Map\\SpyAppConfigTableMap', 'spy_locale' => '\\Orm\\Zed\\Locale\\Persistence\\Map\\SpyLocaleTableMap', @@ -11,7 +11,7 @@ 'spy_queue_process' => '\\Orm\\Zed\\Queue\\Persistence\\Map\\SpyQueueProcessTableMap', 'spy_store' => '\\Orm\\Zed\\Store\\Persistence\\Map\\SpyStoreTableMap', ), - 'tablesByPhpName' => + 'tablesByPhpName' => array ( '\\SpyAppConfig' => '\\Orm\\Zed\\AppKernel\\Persistence\\Map\\SpyAppConfigTableMap', '\\SpyLocale' => '\\Orm\\Zed\\Locale\\Persistence\\Map\\SpyLocaleTableMap', diff --git a/resources/api/asyncapi.yml b/resources/api/asyncapi.yml index 1555b2c..5756b61 100644 --- a/resources/api/asyncapi.yml +++ b/resources/api/asyncapi.yml @@ -9,10 +9,11 @@ channels: oneOf: - $ref: '#/components/messages/ConfigureApp' - $ref: '#/components/messages/DeleteApp' + app-events: publish: message: oneOf: - - $ref: '#/components/messages/AppStatusChanged' + - $ref: '#/components/messages/AppConfigChanged' components: messages: ConfigureApp: @@ -36,14 +37,14 @@ components: $ref: '#/components/schemas/message-broker/components/schemas/headers' payload: $ref: '#/components/schemas/AppDisconnect' - AppStatusChanged: + AppConfigChanged: x-spryker: module: AppConfig - name: AppStatusChanged + name: AppConfigChanged title: Update App config Command summary: 'Request to update app config for tenant.' payload: - $ref: '#/components/schemas/AppStatusChanged' + $ref: '#/components/schemas/AppConfigChanged' headers: $ref: '#/components/schemas/message-broker/components/schemas/headers' schemas: @@ -67,7 +68,7 @@ components: description: The app identifier to identify the PBC. required: - appIdentifier - AppStatusChanged: + AppConfigChanged: type: object properties: appIdentifier: diff --git a/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml b/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml index 6f7815d..28bbe61 100644 --- a/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml +++ b/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml @@ -9,7 +9,7 @@ - + diff --git a/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php b/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php index 41d33f9..b6e8b38 100644 --- a/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php +++ b/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php @@ -86,20 +86,4 @@ public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConf ->createMessageSender() ->informTenantAboutChangedConfiguration($appConfigTransfer); } - - /** - * {@inheritDoc} - * - * @api - * - * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer - * - * @return \Generated\Shared\Transfer\AppDisconnectTransfer - */ - public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer - { - return $this->getFactory() - ->createMessageSender() - ->informTenantAboutDeletedConfiguration($appDisconnectTransfer); - } } diff --git a/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php b/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php index 58dbcef..f02e16a 100644 --- a/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php @@ -87,17 +87,4 @@ public function getConfig(AppConfigCriteriaTransfer $appConfigCriteriaTransfer, * @return \Generated\Shared\Transfer\AppConfigTransfer */ public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConfigTransfer): AppConfigTransfer; - - /** - * Specification: - * - Sends a message to the tenant about the removed configuration. - * - Returns the unchanged AppDisconnectTransfer (Only used). - * - * @api - * - * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer - * - * @return \Generated\Shared\Transfer\AppDisconnectTransfer - */ - public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer; } diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php index af7aff5..6763502 100644 --- a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php @@ -7,9 +7,8 @@ namespace Spryker\Zed\AppKernel\Business\MessageSender; +use Generated\Shared\Transfer\AppConfigChangedTransfer; use Generated\Shared\Transfer\AppConfigTransfer; -use Generated\Shared\Transfer\AppDisconnectTransfer; -use Generated\Shared\Transfer\AppStatusChangedTransfer; use Generated\Shared\Transfer\MessageAttributesTransfer; use Spryker\Zed\AppKernel\AppKernelConfig; use Spryker\Zed\AppKernel\Dependency\Facade\AppKernelToMessageBrokerFacadeInterface; @@ -38,43 +37,21 @@ public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConf ) { $status = true; } - $appStatusChangedTransfer = new AppStatusChangedTransfer(); - $appStatusChangedTransfer + $appConfigChangedTransfer = new AppConfigChangedTransfer(); + $appConfigChangedTransfer ->setAppIdentifier($this->config->getAppIdentifier()) ->setStatus($status); - $appStatusChangedTransfer->setMessageAttributes($this->getMessageAttributes( + $appConfigChangedTransfer->setMessageAttributes($this->getMessageAttributes( $appConfigTransfer->getTenantIdentifierOrFail(), $appConfigTransfer::class, )); - $this->messageBrokerFacade->sendMessage($appStatusChangedTransfer); + $this->messageBrokerFacade->sendMessage($appConfigChangedTransfer); return $appConfigTransfer; } - /** - * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer - * - * @return \Generated\Shared\Transfer\AppDisconnectTransfer - */ - public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer - { - $appStatusChangedTransfer = new AppStatusChangedTransfer(); - $appStatusChangedTransfer - ->setAppIdentifier($this->config->getAppIdentifier()) - ->setStatus(false); - - $appStatusChangedTransfer->setMessageAttributes($this->getMessageAttributes( - $appDisconnectTransfer->getTenantIdentifierOrFail(), - $appStatusChangedTransfer::class, - )); - - $this->messageBrokerFacade->sendMessage($appStatusChangedTransfer); - - return $appDisconnectTransfer; - } - /** * @param string $tenantIdentifier * @param string $transferName diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php index 30513c8..2b44d0e 100644 --- a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php @@ -8,7 +8,6 @@ namespace Spryker\Zed\AppKernel\Business\MessageSender; use Generated\Shared\Transfer\AppConfigTransfer; -use Generated\Shared\Transfer\AppDisconnectTransfer; interface MessageSenderInterface { @@ -18,11 +17,4 @@ interface MessageSenderInterface * @return \Generated\Shared\Transfer\AppConfigTransfer */ public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConfigTransfer): AppConfigTransfer; - - /** - * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer - * - * @return \Generated\Shared\Transfer\AppDisconnectTransfer - */ - public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer; } diff --git a/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php b/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php deleted file mode 100644 index cd1b04e..0000000 --- a/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php +++ /dev/null @@ -1,34 +0,0 @@ -getFacade()->informTenantAboutDeletedConfiguration($appDisconnectTransfer); - } -} From 789967d184fa517af5479e2a4e3ba31dd9f0e1b9 Mon Sep 17 00:00:00 2001 From: vol4onok Date: Fri, 21 Jun 2024 17:16:41 +0300 Subject: [PATCH 08/17] ACP-3340: updated event object --- .../AppKernel/Business/AppKernelFacade.php | 17 ++++++++++ .../Business/AppKernelFacadeInterface.php | 14 ++++++++ .../Business/MessageSender/MessageSender.php | 23 +++++++++++++ .../MessageSender/MessageSenderInterface.php | 8 +++++ ...tDeletedConfigurationAfterDeletePlugin.php | 34 +++++++++++++++++++ 5 files changed, 96 insertions(+) create mode 100644 src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php diff --git a/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php b/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php index 29bb679..fac5dc2 100644 --- a/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php +++ b/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php @@ -10,6 +10,7 @@ use Generated\Shared\Transfer\AppConfigCriteriaTransfer; use Generated\Shared\Transfer\AppConfigResponseTransfer; use Generated\Shared\Transfer\AppConfigTransfer; +use Generated\Shared\Transfer\AppDisconnectTransfer; use Spryker\Shared\Kernel\Transfer\TransferInterface; use Spryker\Zed\Kernel\Business\AbstractFacade; @@ -68,4 +69,20 @@ public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConf ->createMessageSender() ->informTenantAboutChangedConfiguration($appConfigTransfer); } + + /** + * {@inheritDoc} + * + * @api + * + * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer + * + * @return \Generated\Shared\Transfer\AppDisconnectTransfer + */ + public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer + { + return $this->getFactory() + ->createMessageSender() + ->informTenantAboutDeletedConfiguration($appDisconnectTransfer); + } } diff --git a/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php b/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php index 00a88c3..1674cd9 100644 --- a/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php @@ -10,6 +10,7 @@ use Generated\Shared\Transfer\AppConfigCriteriaTransfer; use Generated\Shared\Transfer\AppConfigResponseTransfer; use Generated\Shared\Transfer\AppConfigTransfer; +use Generated\Shared\Transfer\AppDisconnectTransfer; use Spryker\Shared\Kernel\Transfer\TransferInterface; interface AppKernelFacadeInterface @@ -68,4 +69,17 @@ public function getConfig(AppConfigCriteriaTransfer $appConfigCriteriaTransfer, * @return \Generated\Shared\Transfer\AppConfigTransfer */ public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConfigTransfer): AppConfigTransfer; + + /** + * Specification: + * - Sends a message to the tenant about the removed configuration. + * - Returns the unchanged AppDisconnectTransfer (Only used). + * + * @api + * + * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer + * + * @return \Generated\Shared\Transfer\AppDisconnectTransfer + */ + public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer; } diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php index 6763502..8dab445 100644 --- a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php @@ -9,6 +9,7 @@ use Generated\Shared\Transfer\AppConfigChangedTransfer; use Generated\Shared\Transfer\AppConfigTransfer; +use Generated\Shared\Transfer\AppDisconnectTransfer; use Generated\Shared\Transfer\MessageAttributesTransfer; use Spryker\Zed\AppKernel\AppKernelConfig; use Spryker\Zed\AppKernel\Dependency\Facade\AppKernelToMessageBrokerFacadeInterface; @@ -52,6 +53,28 @@ public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConf return $appConfigTransfer; } + /** + * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer + * + * @return \Generated\Shared\Transfer\AppDisconnectTransfer + */ + public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer + { + $appStatusChangedTransfer = new AppConfigChangedTransfer(); + $appStatusChangedTransfer + ->setAppIdentifier($this->config->getAppIdentifier()) + ->setStatus(false); + + $appStatusChangedTransfer->setMessageAttributes($this->getMessageAttributes( + $appDisconnectTransfer->getTenantIdentifierOrFail(), + $appStatusChangedTransfer::class, + )); + + $this->messageBrokerFacade->sendMessage($appStatusChangedTransfer); + + return $appDisconnectTransfer; + } + /** * @param string $tenantIdentifier * @param string $transferName diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php index 2b44d0e..30513c8 100644 --- a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php @@ -8,6 +8,7 @@ namespace Spryker\Zed\AppKernel\Business\MessageSender; use Generated\Shared\Transfer\AppConfigTransfer; +use Generated\Shared\Transfer\AppDisconnectTransfer; interface MessageSenderInterface { @@ -17,4 +18,11 @@ interface MessageSenderInterface * @return \Generated\Shared\Transfer\AppConfigTransfer */ public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConfigTransfer): AppConfigTransfer; + + /** + * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer + * + * @return \Generated\Shared\Transfer\AppDisconnectTransfer + */ + public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer; } diff --git a/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php b/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php new file mode 100644 index 0000000..cd1b04e --- /dev/null +++ b/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php @@ -0,0 +1,34 @@ +getFacade()->informTenantAboutDeletedConfiguration($appDisconnectTransfer); + } +} From 4f1b215242ee83fac5c636a642de41ffbe93786d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Klatt?= Date: Mon, 24 Jun 2024 11:04:22 +0200 Subject: [PATCH 09/17] ACP-3340 WIP --- resources/api/asyncapi.yml | 24 ++- .../Transfer/app_kernel.transfer.xml | 4 +- .../Business/MessageSender/MessageSender.php | 33 ++-- .../AppEvents/AppConfigUpdatedTest.php | 176 ++++++++++++++++++ .../_support/AppMerchantAsyncApiTester.php | 35 ++++ .../AsyncApi/AppKernel/codeception.yml | 35 ++++ 6 files changed, 277 insertions(+), 30 deletions(-) create mode 100644 tests/SprykerTest/AsyncApi/AppKernel/AppKernelTests/AppEvents/AppConfigUpdatedTest.php create mode 100644 tests/SprykerTest/AsyncApi/AppKernel/_support/AppMerchantAsyncApiTester.php create mode 100644 tests/SprykerTest/AsyncApi/AppKernel/codeception.yml diff --git a/resources/api/asyncapi.yml b/resources/api/asyncapi.yml index 5756b61..7bd5116 100644 --- a/resources/api/asyncapi.yml +++ b/resources/api/asyncapi.yml @@ -10,10 +10,10 @@ channels: - $ref: '#/components/messages/ConfigureApp' - $ref: '#/components/messages/DeleteApp' app-events: - publish: + subscribe: message: oneOf: - - $ref: '#/components/messages/AppConfigChanged' + - $ref: '#/components/messages/AppConfigUpdated' components: messages: ConfigureApp: @@ -37,14 +37,14 @@ components: $ref: '#/components/schemas/message-broker/components/schemas/headers' payload: $ref: '#/components/schemas/AppDisconnect' - AppConfigChanged: + AppConfigUpdated: x-spryker: module: AppConfig - name: AppConfigChanged - title: Update App config Command - summary: 'Request to update app config for tenant.' + name: AppConfigUpdated + title: Contains information about an updated App configuration. + summary: 'Contains information about an updated App configuration.' payload: - $ref: '#/components/schemas/AppConfigChanged' + $ref: '#/components/schemas/AppConfigUpdated' headers: $ref: '#/components/schemas/message-broker/components/schemas/headers' schemas: @@ -68,7 +68,7 @@ components: description: The app identifier to identify the PBC. required: - appIdentifier - AppConfigChanged: + AppConfigUpdated: type: object properties: appIdentifier: @@ -76,9 +76,15 @@ components: description: The app identifier to identify the PBC. status: type: boolean - description: The status of PBC (enabled, disabled). + description: The status of PBC (new, connected). + isActive: + type: boolean + config: + type: array required: - appIdentifier - status + - isActive + - config message-broker: $ref: 'https://raw.githubusercontent.com/spryker/message-broker/1.6.0/resources/api/template.yml' diff --git a/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml b/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml index 28bbe61..0127b70 100644 --- a/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml +++ b/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml @@ -9,8 +9,10 @@ - + + + diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php index 8dab445..fc67624 100644 --- a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php @@ -7,8 +7,8 @@ namespace Spryker\Zed\AppKernel\Business\MessageSender; -use Generated\Shared\Transfer\AppConfigChangedTransfer; use Generated\Shared\Transfer\AppConfigTransfer; +use Generated\Shared\Transfer\AppConfigUpdatedTransfer; use Generated\Shared\Transfer\AppDisconnectTransfer; use Generated\Shared\Transfer\MessageAttributesTransfer; use Spryker\Zed\AppKernel\AppKernelConfig; @@ -31,24 +31,17 @@ public function __construct(protected AppKernelToMessageBrokerFacadeInterface $m */ public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConfigTransfer): AppConfigTransfer { - $status = false; - if ( - $appConfigTransfer->getStatus() === AppKernelConfig::APP_STATUS_CONNECTED && - ($appConfigTransfer->getIsActive() === null || $appConfigTransfer->getIsActive() === true) - ) { - $status = true; - } - $appConfigChangedTransfer = new AppConfigChangedTransfer(); - $appConfigChangedTransfer - ->setAppIdentifier($this->config->getAppIdentifier()) - ->setStatus($status); + $appConfigUpdatedTransfer = new AppConfigUpdatedTransfer(); + $appConfigUpdatedTransfer->fromArray($appConfigTransfer->toArray(), true); + $appConfigUpdatedTransfer + ->setAppIdentifier($this->config->getAppIdentifier()); - $appConfigChangedTransfer->setMessageAttributes($this->getMessageAttributes( + $appConfigUpdatedTransfer->setMessageAttributes($this->getMessageAttributes( $appConfigTransfer->getTenantIdentifierOrFail(), $appConfigTransfer::class, )); - $this->messageBrokerFacade->sendMessage($appConfigChangedTransfer); + $this->messageBrokerFacade->sendMessage($appConfigUpdatedTransfer); return $appConfigTransfer; } @@ -60,17 +53,17 @@ public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConf */ public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer { - $appStatusChangedTransfer = new AppConfigChangedTransfer(); - $appStatusChangedTransfer + $appConfigUpdatedTransfer = new AppConfigUpdatedTransfer(); + $appConfigUpdatedTransfer ->setAppIdentifier($this->config->getAppIdentifier()) - ->setStatus(false); + ->setIsActive(false); - $appStatusChangedTransfer->setMessageAttributes($this->getMessageAttributes( + $appConfigUpdatedTransfer->setMessageAttributes($this->getMessageAttributes( $appDisconnectTransfer->getTenantIdentifierOrFail(), - $appStatusChangedTransfer::class, + $appConfigUpdatedTransfer::class, )); - $this->messageBrokerFacade->sendMessage($appStatusChangedTransfer); + $this->messageBrokerFacade->sendMessage($appConfigUpdatedTransfer); return $appDisconnectTransfer; } diff --git a/tests/SprykerTest/AsyncApi/AppKernel/AppKernelTests/AppEvents/AppConfigUpdatedTest.php b/tests/SprykerTest/AsyncApi/AppKernel/AppKernelTests/AppEvents/AppConfigUpdatedTest.php new file mode 100644 index 0000000..2794489 --- /dev/null +++ b/tests/SprykerTest/AsyncApi/AppKernel/AppKernelTests/AppEvents/AppConfigUpdatedTest.php @@ -0,0 +1,176 @@ +tester->haveReadyForMerchantAppOnboardingTransfer(); + $appConfigTransfer = $this->tester->haveAppConfigTransfer(); + + $onboardingTransfer = new OnboardingTransfer(); + $onboardingTransfer + ->setStrategy('test-strategy') + ->setUrl('url'); + + $merchantAppOnboardingDetailsTransfer = new MerchantAppOnboardingDetailsTransfer(); + $merchantAppOnboardingDetailsTransfer + ->setType('TestType') + ->setAppName('AppName') + ->setAppIdentifier('AppIdentifier') + ->setOnboarding($onboardingTransfer); + + $this->tester->mockPlatformPluginImplementation($merchantAppOnboardingDetailsTransfer, new MerchantAppOnboardingResponseTransfer()); + $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_BEFORE_SAVE_PLUGINS, [ + new InformTenantAboutMerchantAppOnboardingReadinessConfigurationBeforeSavePlugin(), + ]); + $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_AFTER_SAVE_PLUGINS, []); + + // Act + $appKernelFacade = new AppKernelFacade(); + $appKernelFacade->saveConfig($appConfigTransfer); + + // Assert + $this->tester->assertMessageWasEmittedOnChannel($readyForMerchantAppOnboardingTransfer, 'merchant-app-events'); + } + + /** + * @return void + */ + public function testGivenTenantIsConnectedWithAppAndTheOnboardingDetailsWereAlreadySentWhenMarketplaceOwnerUpdatesTheAppConfigurationThenTheReadyForMerchantAppOnboardingMessageIsNotSend(): void + { + // Arrange + $appConfigTransfer = $this->tester->haveAppConfigTransfer(['config' => ['tenant-onboarding-status' => 'onboarded']]); + + $onboardingTransfer = new OnboardingTransfer(); + $onboardingTransfer + ->setStrategy('test-strategy') + ->setUrl('url'); + + $merchantAppOnboardingDetailsTransfer = new MerchantAppOnboardingDetailsTransfer(); + $merchantAppOnboardingDetailsTransfer + ->setType('TestType') + ->setAppName('AppName') + ->setAppIdentifier('AppIdentifier') + ->setOnboarding($onboardingTransfer); + + $this->tester->mockPlatformPluginImplementation($merchantAppOnboardingDetailsTransfer, new MerchantAppOnboardingResponseTransfer()); + $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_BEFORE_SAVE_PLUGINS, [ + new InformTenantAboutMerchantAppOnboardingReadinessConfigurationBeforeSavePlugin(), + ]); + $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_AFTER_SAVE_PLUGINS, []); + + // Act + + $appKernelFacade = new AppKernelFacade(); + $appKernelFacade->saveConfig($appConfigTransfer); + + // Assert + $this->tester->assertMessageWasNotSent(ReadyForMerchantAppOnboardingTransfer::class); + } + + /** + * @return void + */ + public function testGivenTenantIsNotConnectedWithAppWhenMarketplaceOwnerConfiguresTheAppThenTheReadyForMerchantAppOnboardingMessageIsSendWithTheStrategyAndUrlProvidedByTheAppPluginImplementation(): void + { + // Arrange + $expectedStrategy = 'test-strategy'; + $expectedUrl = 'www.test-url.com'; + + $readyForMerchantAppOnboardingTransfer = $this->tester->haveReadyForMerchantAppOnboardingTransfer(); + $appConfigTransfer = $this->tester->haveAppConfigTransfer(); + + $merchantAppOnboardingDetailsTransfer = new MerchantAppOnboardingDetailsTransfer(); + $merchantAppOnboardingDetailsTransfer + ->setType('TestType') + ->setAppName('AppName') + ->setAppIdentifier('AppIdentifier'); + + $onboardingTransfer = new OnboardingTransfer(); + $onboardingTransfer->setStrategy($expectedStrategy); + $onboardingTransfer->setUrl($expectedUrl); + + $merchantAppOnboardingDetailsTransfer->setOnboarding($onboardingTransfer); + + $this->tester->mockPlatformPluginImplementation($merchantAppOnboardingDetailsTransfer); + + $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_BEFORE_SAVE_PLUGINS, [ + new InformTenantAboutMerchantAppOnboardingReadinessConfigurationBeforeSavePlugin(), + ]); + $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_AFTER_SAVE_PLUGINS, []); + + // Act + $appKernelFacade = new AppKernelFacade(); + $appKernelFacade->saveConfig($appConfigTransfer); + + // Assert + $this->tester->assertMessageWasEmittedOnChannel($readyForMerchantAppOnboardingTransfer, 'merchant-app-events'); + } + + /** + * @return void + */ + public function testGivenTenantIsNotConnectedWithAppWhenThePlatformPluginImplementationReturnsTheApiStrategyAndNoUrlThenTheApiEndpointUrlIsUsedFromTheAppMerchant(): void + { + // Arrange + $expectedStrategy = 'api'; + + $readyForMerchantAppOnboardingTransfer = $this->tester->haveReadyForMerchantAppOnboardingTransfer(); + $appConfigTransfer = $this->tester->haveAppConfigTransfer(); + + $merchantAppOnboardingDetailsTransfer = new MerchantAppOnboardingDetailsTransfer(); + $merchantAppOnboardingDetailsTransfer + ->setType('TestType') + ->setAppName('AppName') + ->setAppIdentifier('AppIdentifier'); + + $onboardingTransfer = new OnboardingTransfer(); + $onboardingTransfer->setStrategy($expectedStrategy); + + $merchantAppOnboardingDetailsTransfer->setOnboarding($onboardingTransfer); + + $this->tester->mockPlatformPluginImplementation($merchantAppOnboardingDetailsTransfer); + + $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_BEFORE_SAVE_PLUGINS, [ + new InformTenantAboutMerchantAppOnboardingReadinessConfigurationBeforeSavePlugin(), + ]); + $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_AFTER_SAVE_PLUGINS, []); + + // Act + $appKernelFacade = new AppKernelFacade(); + $appKernelFacade->saveConfig($appConfigTransfer); + + // Assert + $this->tester->assertMessageWasEmittedOnChannel($readyForMerchantAppOnboardingTransfer, 'merchant-app-events'); + } +} diff --git a/tests/SprykerTest/AsyncApi/AppKernel/_support/AppMerchantAsyncApiTester.php b/tests/SprykerTest/AsyncApi/AppKernel/_support/AppMerchantAsyncApiTester.php new file mode 100644 index 0000000..37a35f3 --- /dev/null +++ b/tests/SprykerTest/AsyncApi/AppKernel/_support/AppMerchantAsyncApiTester.php @@ -0,0 +1,35 @@ + Date: Mon, 24 Jun 2024 12:07:29 +0200 Subject: [PATCH 10/17] ACP-3340 Added AppConfigUpdated message sending --- codeception.yml | 1 + composer.json | 7 +- config/Shared/config_default.php | 21 +++ resources/api/asyncapi.yml | 6 - .../Transfer/app_kernel.transfer.xml | 8 +- .../Business/AppKernelBusinessFactory.php | 1 + .../AppKernel/Business/AppKernelFacade.php | 33 ---- .../Business/AppKernelFacadeInterface.php | 27 ---- .../Business/MessageSender/MessageSender.php | 25 +-- .../MessageSender/MessageSenderInterface.php | 10 +- .../Business/Writer/ConfigWriter.php | 7 +- ...outChangedConfigurationAfterSavePlugin.php | 34 ---- ...tDeletedConfigurationAfterDeletePlugin.php | 34 ---- .../AppEvents/AppConfigUpdatedTest.php | 150 ++---------------- ...Tester.php => AppKernelAsyncApiTester.php} | 14 +- .../Glue/AppKernel/codeception.yml | 2 + .../_support/Helper/AppKernelHelper.php | 12 ++ .../SprykerTest/Zed/AppKernel/codeception.yml | 1 + 18 files changed, 78 insertions(+), 315 deletions(-) create mode 100644 config/Shared/config_default.php delete mode 100644 src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutChangedConfigurationAfterSavePlugin.php delete mode 100644 src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php rename tests/SprykerTest/AsyncApi/AppKernel/_support/{AppMerchantAsyncApiTester.php => AppKernelAsyncApiTester.php} (54%) diff --git a/codeception.yml b/codeception.yml index 41caa8e..53dcbed 100644 --- a/codeception.yml +++ b/codeception.yml @@ -1,6 +1,7 @@ namespace: SprykerTest include: + - tests/SprykerTest/AsyncApi/AppKernel - tests/SprykerTest/Glue/AppKernel - tests/SprykerTest/Zed/AppKernel diff --git a/composer.json b/composer.json index d606a3a..736d3e3 100644 --- a/composer.json +++ b/composer.json @@ -20,14 +20,17 @@ }, "require-dev": { "codeception/codeception": "^5.0", - "phpstan/phpstan": "1.10.66", + "codeception/module-asserts": "^3.0", "phpstan/phpdoc-parser": "1.25.0", + "phpstan/phpstan": "1.10.66", "rector/rector": "^0.19.0", "spryker/code-sniffer": "*", "spryker/container": "*", "spryker/development": "^3.34.0", + "spryker/message-broker-aws": "^1.7", "spryker/propel": "*", - "spryker/testify": "*" + "spryker/testify": "*", + "spryker/testify-async-api": "^0.1.4" }, "autoload": { "psr-4": { diff --git a/config/Shared/config_default.php b/config/Shared/config_default.php new file mode 100644 index 0000000..12e91a5 --- /dev/null +++ b/config/Shared/config_default.php @@ -0,0 +1,21 @@ + 'app-events', +]; + +$config[MessageBrokerConstants::CHANNEL_TO_SENDER_TRANSPORT_MAP] = [ + 'app-events' => MessageBrokerAwsConfig::HTTP_CHANNEL_TRANSPORT, +]; + +$config[AppKernelConstants::APP_IDENTIFIER] = Uuid::uuid4()->toString(); diff --git a/resources/api/asyncapi.yml b/resources/api/asyncapi.yml index 7bd5116..991bdb4 100644 --- a/resources/api/asyncapi.yml +++ b/resources/api/asyncapi.yml @@ -3,12 +3,6 @@ info: title: 'PBC AsyncAPI definition.' version: 0.1.0 channels: - app-commands: - subscribe: - message: - oneOf: - - $ref: '#/components/messages/ConfigureApp' - - $ref: '#/components/messages/DeleteApp' app-events: subscribe: message: diff --git a/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml b/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml index 28a003f..e0aeb24 100644 --- a/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml +++ b/src/Spryker/Shared/AppKernel/Transfer/app_kernel.transfer.xml @@ -17,7 +17,13 @@ - + + + + + + + diff --git a/src/Spryker/Zed/AppKernel/Business/AppKernelBusinessFactory.php b/src/Spryker/Zed/AppKernel/Business/AppKernelBusinessFactory.php index 251caf2..5f1025c 100644 --- a/src/Spryker/Zed/AppKernel/Business/AppKernelBusinessFactory.php +++ b/src/Spryker/Zed/AppKernel/Business/AppKernelBusinessFactory.php @@ -39,6 +39,7 @@ public function createConfigWriter(): ConfigWriterInterface $this->getEntityManager(), $this->getRepository(), $this->createPropelEncryptionConfigurator(), + $this->createMessageSender(), $this->getConfigurationBeforeSavePlugins(), $this->getConfigurationAfterSavePlugins(), $this->getConfigurationBeforeDeletePlugins(), diff --git a/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php b/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php index fac5dc2..af7c4be 100644 --- a/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php +++ b/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php @@ -10,7 +10,6 @@ use Generated\Shared\Transfer\AppConfigCriteriaTransfer; use Generated\Shared\Transfer\AppConfigResponseTransfer; use Generated\Shared\Transfer\AppConfigTransfer; -use Generated\Shared\Transfer\AppDisconnectTransfer; use Spryker\Shared\Kernel\Transfer\TransferInterface; use Spryker\Zed\Kernel\Business\AbstractFacade; @@ -53,36 +52,4 @@ public function getConfig(AppConfigCriteriaTransfer $appConfigCriteriaTransfer, { return $this->getFactory()->createConfigReader()->getAppConfigByCriteria($appConfigCriteriaTransfer, $transfer); } - - /** - * {@inheritDoc} - * - * @api - * - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ - public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConfigTransfer): AppConfigTransfer - { - return $this->getFactory() - ->createMessageSender() - ->informTenantAboutChangedConfiguration($appConfigTransfer); - } - - /** - * {@inheritDoc} - * - * @api - * - * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer - * - * @return \Generated\Shared\Transfer\AppDisconnectTransfer - */ - public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer - { - return $this->getFactory() - ->createMessageSender() - ->informTenantAboutDeletedConfiguration($appDisconnectTransfer); - } } diff --git a/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php b/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php index 1674cd9..88b3452 100644 --- a/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php @@ -10,7 +10,6 @@ use Generated\Shared\Transfer\AppConfigCriteriaTransfer; use Generated\Shared\Transfer\AppConfigResponseTransfer; use Generated\Shared\Transfer\AppConfigTransfer; -use Generated\Shared\Transfer\AppDisconnectTransfer; use Spryker\Shared\Kernel\Transfer\TransferInterface; interface AppKernelFacadeInterface @@ -56,30 +55,4 @@ public function saveConfig(AppConfigTransfer $appConfigTransfer): AppConfigRespo * @return T */ public function getConfig(AppConfigCriteriaTransfer $appConfigCriteriaTransfer, TransferInterface $transfer): TransferInterface; - - /** - * Specification: - * - Sends a message to the tenant about the changed configuration. - * - Returns the unchanged AppConfigTransfer (Only used). - * - * @api - * - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ - public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConfigTransfer): AppConfigTransfer; - - /** - * Specification: - * - Sends a message to the tenant about the removed configuration. - * - Returns the unchanged AppDisconnectTransfer (Only used). - * - * @api - * - * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer - * - * @return \Generated\Shared\Transfer\AppDisconnectTransfer - */ - public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer; } diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php index fc67624..6881a54 100644 --- a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php @@ -9,7 +9,6 @@ use Generated\Shared\Transfer\AppConfigTransfer; use Generated\Shared\Transfer\AppConfigUpdatedTransfer; -use Generated\Shared\Transfer\AppDisconnectTransfer; use Generated\Shared\Transfer\MessageAttributesTransfer; use Spryker\Zed\AppKernel\AppKernelConfig; use Spryker\Zed\AppKernel\Dependency\Facade\AppKernelToMessageBrokerFacadeInterface; @@ -29,7 +28,7 @@ public function __construct(protected AppKernelToMessageBrokerFacadeInterface $m * * @return \Generated\Shared\Transfer\AppConfigTransfer */ - public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConfigTransfer): AppConfigTransfer + public function sendAppConfigUpdatedMessage(AppConfigTransfer $appConfigTransfer): AppConfigTransfer { $appConfigUpdatedTransfer = new AppConfigUpdatedTransfer(); $appConfigUpdatedTransfer->fromArray($appConfigTransfer->toArray(), true); @@ -46,28 +45,6 @@ public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConf return $appConfigTransfer; } - /** - * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer - * - * @return \Generated\Shared\Transfer\AppDisconnectTransfer - */ - public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer - { - $appConfigUpdatedTransfer = new AppConfigUpdatedTransfer(); - $appConfigUpdatedTransfer - ->setAppIdentifier($this->config->getAppIdentifier()) - ->setIsActive(false); - - $appConfigUpdatedTransfer->setMessageAttributes($this->getMessageAttributes( - $appDisconnectTransfer->getTenantIdentifierOrFail(), - $appConfigUpdatedTransfer::class, - )); - - $this->messageBrokerFacade->sendMessage($appConfigUpdatedTransfer); - - return $appDisconnectTransfer; - } - /** * @param string $tenantIdentifier * @param string $transferName diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php index 30513c8..ebb9bd8 100644 --- a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php @@ -8,7 +8,6 @@ namespace Spryker\Zed\AppKernel\Business\MessageSender; use Generated\Shared\Transfer\AppConfigTransfer; -use Generated\Shared\Transfer\AppDisconnectTransfer; interface MessageSenderInterface { @@ -17,12 +16,5 @@ interface MessageSenderInterface * * @return \Generated\Shared\Transfer\AppConfigTransfer */ - public function informTenantAboutChangedConfiguration(AppConfigTransfer $appConfigTransfer): AppConfigTransfer; - - /** - * @param \Generated\Shared\Transfer\AppDisconnectTransfer $appDisconnectTransfer - * - * @return \Generated\Shared\Transfer\AppDisconnectTransfer - */ - public function informTenantAboutDeletedConfiguration(AppDisconnectTransfer $appDisconnectTransfer): AppDisconnectTransfer; + public function sendAppConfigUpdatedMessage(AppConfigTransfer $appConfigTransfer): AppConfigTransfer; } diff --git a/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriter.php b/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriter.php index af8badc..ff01b55 100644 --- a/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriter.php +++ b/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriter.php @@ -13,6 +13,7 @@ use Spryker\Shared\Log\LoggerTrait; use Spryker\Zed\AppKernel\AppKernelConfig; use Spryker\Zed\AppKernel\Business\EncryptionConfigurator\PropelEncryptionConfiguratorInterface; +use Spryker\Zed\AppKernel\Business\MessageSender\MessageSenderInterface; use Spryker\Zed\AppKernel\Persistence\AppKernelEntityManagerInterface; use Spryker\Zed\AppKernel\Persistence\AppKernelRepositoryInterface; use Spryker\Zed\Kernel\Persistence\EntityManager\TransactionTrait; @@ -32,6 +33,7 @@ class ConfigWriter implements ConfigWriterInterface * @param \Spryker\Zed\AppKernel\Persistence\AppKernelEntityManagerInterface $appEntityManager * @param \Spryker\Zed\AppKernel\Persistence\AppKernelRepositoryInterface $appKernelRepository * @param \Spryker\Zed\AppKernel\Business\EncryptionConfigurator\PropelEncryptionConfiguratorInterface $propelEncryptionConfigurator + * @param \Spryker\Zed\AppKernel\Business\MessageSender\MessageSenderInterface $messageSender * @param array<\Spryker\Zed\AppKernelExtension\Dependency\Plugin\ConfigurationBeforeSavePluginInterface> $configurationBeforeSavePlugins * @param array<\Spryker\Zed\AppKernelExtension\Dependency\Plugin\ConfigurationAfterSavePluginInterface> $configurationAfterSavePlugins * @param array<\Spryker\Zed\AppKernelExtension\Dependency\Plugin\ConfigurationBeforeDeletePluginInterface> $configurationBeforeDeletePlugin @@ -41,6 +43,7 @@ public function __construct( protected AppKernelEntityManagerInterface $appEntityManager, protected AppKernelRepositoryInterface $appKernelRepository, protected PropelEncryptionConfiguratorInterface $propelEncryptionConfigurator, + protected MessageSenderInterface $messageSender, protected array $configurationBeforeSavePlugins = [], protected array $configurationAfterSavePlugins = [], protected array $configurationBeforeDeletePlugin = [], @@ -91,7 +94,9 @@ protected function doSaveAppConfig(AppConfigTransfer $appConfigTransfer): AppCon $appConfigTransfer = $this->appEntityManager->saveConfig($appConfigTransfer); - return $this->executeAfterPlugins($appConfigTransfer); + $appConfigTransfer = $this->executeAfterPlugins($appConfigTransfer); + + return $this->messageSender->sendAppConfigUpdatedMessage($appConfigTransfer); } /** diff --git a/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutChangedConfigurationAfterSavePlugin.php b/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutChangedConfigurationAfterSavePlugin.php deleted file mode 100644 index 2bdaf93..0000000 --- a/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutChangedConfigurationAfterSavePlugin.php +++ /dev/null @@ -1,34 +0,0 @@ -getFacade()->informTenantAboutChangedConfiguration($appConfigTransfer); - } -} diff --git a/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php b/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php deleted file mode 100644 index cd1b04e..0000000 --- a/src/Spryker/Zed/AppKernel/Communication/Plugin/InformTenantAboutDeletedConfigurationAfterDeletePlugin.php +++ /dev/null @@ -1,34 +0,0 @@ -getFacade()->informTenantAboutDeletedConfiguration($appDisconnectTransfer); - } -} diff --git a/tests/SprykerTest/AsyncApi/AppKernel/AppKernelTests/AppEvents/AppConfigUpdatedTest.php b/tests/SprykerTest/AsyncApi/AppKernel/AppKernelTests/AppEvents/AppConfigUpdatedTest.php index 2794489..cac979d 100644 --- a/tests/SprykerTest/AsyncApi/AppKernel/AppKernelTests/AppEvents/AppConfigUpdatedTest.php +++ b/tests/SprykerTest/AsyncApi/AppKernel/AppKernelTests/AppEvents/AppConfigUpdatedTest.php @@ -8,7 +8,11 @@ namespace SprykerTest\AsyncApi\AppKernel\AppKernelTests\AppEvents; use Codeception\Test\Unit; -use Spryker\Zed\AppKernel\Business\AppKernelFacade; +use Generated\Shared\Transfer\AppConfigTransfer; +use Generated\Shared\Transfer\AppConfigUpdatedTransfer; +use Ramsey\Uuid\Uuid; +use Spryker\Shared\AppKernel\AppKernelConstants; +use SprykerTest\AsyncApi\AppKernel\AppKernelAsyncApiTester; /** * Auto-generated group annotations @@ -24,153 +28,25 @@ class AppConfigUpdatedTest extends Unit { /** - * @var \PyzTest\AsyncApi\AppMerchant\AppMerchantAsyncApiTester + * @var \SprykerTest\AsyncApi\AppKernel\AppKernelAsyncApiTester */ protected AppKernelAsyncApiTester $tester; /** * @return void */ - public function testGivenTenantIsNotConnectedWithAppWhenMarketplaceOwnerConfiguresTheAppThenTheReadyForMerchantAppOnboardingMessageIsSend(): void + public function testGivenTenantIsNotConnectedWithAppWhenMarketplaceOwnerConfiguresTheAppThenTheAppConfigUpdatedMessageIsSend(): void { // Arrange - $readyForMerchantAppOnboardingTransfer = $this->tester->haveReadyForMerchantAppOnboardingTransfer(); - $appConfigTransfer = $this->tester->haveAppConfigTransfer(); - - $onboardingTransfer = new OnboardingTransfer(); - $onboardingTransfer - ->setStrategy('test-strategy') - ->setUrl('url'); - - $merchantAppOnboardingDetailsTransfer = new MerchantAppOnboardingDetailsTransfer(); - $merchantAppOnboardingDetailsTransfer - ->setType('TestType') - ->setAppName('AppName') - ->setAppIdentifier('AppIdentifier') - ->setOnboarding($onboardingTransfer); - - $this->tester->mockPlatformPluginImplementation($merchantAppOnboardingDetailsTransfer, new MerchantAppOnboardingResponseTransfer()); - $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_BEFORE_SAVE_PLUGINS, [ - new InformTenantAboutMerchantAppOnboardingReadinessConfigurationBeforeSavePlugin(), - ]); - $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_AFTER_SAVE_PLUGINS, []); - - // Act - $appKernelFacade = new AppKernelFacade(); - $appKernelFacade->saveConfig($appConfigTransfer); - - // Assert - $this->tester->assertMessageWasEmittedOnChannel($readyForMerchantAppOnboardingTransfer, 'merchant-app-events'); - } - - /** - * @return void - */ - public function testGivenTenantIsConnectedWithAppAndTheOnboardingDetailsWereAlreadySentWhenMarketplaceOwnerUpdatesTheAppConfigurationThenTheReadyForMerchantAppOnboardingMessageIsNotSend(): void - { - // Arrange - $appConfigTransfer = $this->tester->haveAppConfigTransfer(['config' => ['tenant-onboarding-status' => 'onboarded']]); - - $onboardingTransfer = new OnboardingTransfer(); - $onboardingTransfer - ->setStrategy('test-strategy') - ->setUrl('url'); - - $merchantAppOnboardingDetailsTransfer = new MerchantAppOnboardingDetailsTransfer(); - $merchantAppOnboardingDetailsTransfer - ->setType('TestType') - ->setAppName('AppName') - ->setAppIdentifier('AppIdentifier') - ->setOnboarding($onboardingTransfer); - - $this->tester->mockPlatformPluginImplementation($merchantAppOnboardingDetailsTransfer, new MerchantAppOnboardingResponseTransfer()); - $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_BEFORE_SAVE_PLUGINS, [ - new InformTenantAboutMerchantAppOnboardingReadinessConfigurationBeforeSavePlugin(), - ]); - $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_AFTER_SAVE_PLUGINS, []); - - // Act - - $appKernelFacade = new AppKernelFacade(); - $appKernelFacade->saveConfig($appConfigTransfer); - - // Assert - $this->tester->assertMessageWasNotSent(ReadyForMerchantAppOnboardingTransfer::class); - } - - /** - * @return void - */ - public function testGivenTenantIsNotConnectedWithAppWhenMarketplaceOwnerConfiguresTheAppThenTheReadyForMerchantAppOnboardingMessageIsSendWithTheStrategyAndUrlProvidedByTheAppPluginImplementation(): void - { - // Arrange - $expectedStrategy = 'test-strategy'; - $expectedUrl = 'www.test-url.com'; - - $readyForMerchantAppOnboardingTransfer = $this->tester->haveReadyForMerchantAppOnboardingTransfer(); - $appConfigTransfer = $this->tester->haveAppConfigTransfer(); - - $merchantAppOnboardingDetailsTransfer = new MerchantAppOnboardingDetailsTransfer(); - $merchantAppOnboardingDetailsTransfer - ->setType('TestType') - ->setAppName('AppName') - ->setAppIdentifier('AppIdentifier'); - - $onboardingTransfer = new OnboardingTransfer(); - $onboardingTransfer->setStrategy($expectedStrategy); - $onboardingTransfer->setUrl($expectedUrl); - - $merchantAppOnboardingDetailsTransfer->setOnboarding($onboardingTransfer); - - $this->tester->mockPlatformPluginImplementation($merchantAppOnboardingDetailsTransfer); - - $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_BEFORE_SAVE_PLUGINS, [ - new InformTenantAboutMerchantAppOnboardingReadinessConfigurationBeforeSavePlugin(), - ]); - $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_AFTER_SAVE_PLUGINS, []); - - // Act - $appKernelFacade = new AppKernelFacade(); - $appKernelFacade->saveConfig($appConfigTransfer); - - // Assert - $this->tester->assertMessageWasEmittedOnChannel($readyForMerchantAppOnboardingTransfer, 'merchant-app-events'); - } - - /** - * @return void - */ - public function testGivenTenantIsNotConnectedWithAppWhenThePlatformPluginImplementationReturnsTheApiStrategyAndNoUrlThenTheApiEndpointUrlIsUsedFromTheAppMerchant(): void - { - // Arrange - $expectedStrategy = 'api'; - - $readyForMerchantAppOnboardingTransfer = $this->tester->haveReadyForMerchantAppOnboardingTransfer(); - $appConfigTransfer = $this->tester->haveAppConfigTransfer(); - - $merchantAppOnboardingDetailsTransfer = new MerchantAppOnboardingDetailsTransfer(); - $merchantAppOnboardingDetailsTransfer - ->setType('TestType') - ->setAppName('AppName') - ->setAppIdentifier('AppIdentifier'); - - $onboardingTransfer = new OnboardingTransfer(); - $onboardingTransfer->setStrategy($expectedStrategy); - - $merchantAppOnboardingDetailsTransfer->setOnboarding($onboardingTransfer); - - $this->tester->mockPlatformPluginImplementation($merchantAppOnboardingDetailsTransfer); - - $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_BEFORE_SAVE_PLUGINS, [ - new InformTenantAboutMerchantAppOnboardingReadinessConfigurationBeforeSavePlugin(), - ]); - $this->tester->setDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_AFTER_SAVE_PLUGINS, []); + $appIdentifier = Uuid::uuid4()->toString(); + $appConfigTransfer = $this->tester->haveAppConfigTransfer([AppConfigTransfer::IS_ACTIVE => true, AppConfigTransfer::CONFIG => ['foo' => 'bar'], AppConfigTransfer::STATUS => 'NEW']); + $appConfigUpdatedTransfer = $this->tester->haveAppConfigUpdatedTransfer($appConfigTransfer->toArray() + [AppConfigUpdatedTransfer::APP_IDENTIFIER => $appIdentifier]); + $this->tester->mockEnvironmentConfig(AppKernelConstants::APP_IDENTIFIER, $appIdentifier); // Act - $appKernelFacade = new AppKernelFacade(); - $appKernelFacade->saveConfig($appConfigTransfer); + $this->tester->getFacade()->saveConfig($appConfigTransfer); // Assert - $this->tester->assertMessageWasEmittedOnChannel($readyForMerchantAppOnboardingTransfer, 'merchant-app-events'); + $this->tester->assertMessageWasEmittedOnChannel($appConfigUpdatedTransfer, 'app-events'); } } diff --git a/tests/SprykerTest/AsyncApi/AppKernel/_support/AppMerchantAsyncApiTester.php b/tests/SprykerTest/AsyncApi/AppKernel/_support/AppKernelAsyncApiTester.php similarity index 54% rename from tests/SprykerTest/AsyncApi/AppKernel/_support/AppMerchantAsyncApiTester.php rename to tests/SprykerTest/AsyncApi/AppKernel/_support/AppKernelAsyncApiTester.php index 37a35f3..34438ea 100644 --- a/tests/SprykerTest/AsyncApi/AppKernel/_support/AppMerchantAsyncApiTester.php +++ b/tests/SprykerTest/AsyncApi/AppKernel/_support/AppKernelAsyncApiTester.php @@ -1,13 +1,13 @@ build(); } + /** + * @param array $seed + * + * @return \Generated\Shared\Transfer\AppConfigUpdatedTransfer + */ + public function haveAppConfigUpdatedTransfer(array $seed = []): AppConfigUpdatedTransfer + { + return (new AppConfigUpdatedBuilder($seed))->build(); + } + /** * @param array $seed * diff --git a/tests/SprykerTest/Zed/AppKernel/codeception.yml b/tests/SprykerTest/Zed/AppKernel/codeception.yml index 4311a9d..5ea4cc3 100644 --- a/tests/SprykerTest/Zed/AppKernel/codeception.yml +++ b/tests/SprykerTest/Zed/AppKernel/codeception.yml @@ -27,3 +27,4 @@ suites: - \SprykerTest\Zed\Testify\Helper\Business\DependencyProviderHelper - \SprykerTest\Zed\AppKernel\Helper\AppKernelHelper - \SprykerTest\Shared\Propel\Helper\TransactionHelper + - \SprykerTest\Zed\MessageBroker\Helper\InMemoryMessageBrokerHelper From b2b1d231c4cd29e4f55dc1fa2bc6f4e37c2a1924 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Klatt?= Date: Mon, 24 Jun 2024 12:28:26 +0200 Subject: [PATCH 11/17] ACP-3340 Applied latest rector. --- composer.json | 4 +- phpcs.xml | 15 +++- rector.php | 61 +++++++++++----- .../AppKernel/AppKernelDependencyProvider.php | 37 ++-------- .../Glue/AppKernel/AppKernelFactory.php | 27 ------- .../AppKernel/Builder/ResponseBuilder.php | 19 +---- .../Builder/ResponseBuilderInterface.php | 12 --- .../Controller/AppConfigController.php | 12 +-- .../Controller/AppDisconnectController.php | 15 ++-- .../AppKernelToAppKernelFacadeBridge.php | 10 --- .../AppKernelToAppKernelFacadeInterface.php | 10 --- .../AppKernel/Mapper/GlueRequestMapper.php | 16 ---- .../Mapper/GlueRequestMapperInterface.php | 6 -- .../BodyStructureValidatorPlugin.php | 4 - .../HeaderValidatorPlugin.php | 4 - .../RouteProvider/AppRouteProviderPlugin.php | 31 +++----- .../Validator/BodyStructureValidator.php | 12 --- .../AppKernel/Validator/HeaderValidator.php | 5 -- .../AppKernel/Validator/RequestValidator.php | 9 +-- .../Validator/RequestValidatorInterface.php | 5 -- src/Spryker/Zed/AppKernel/AppKernelConfig.php | 2 - .../AppKernel/AppKernelDependencyProvider.php | 67 ++--------------- .../Business/AppKernelBusinessFactory.php | 24 ------ .../AppKernel/Business/AppKernelFacade.php | 5 -- .../Business/AppKernelFacadeInterface.php | 5 -- .../PropelEncryptionConfigurator.php | 8 -- .../PropelEncryptionConfiguratorInterface.php | 5 -- .../Business/MessageSender/MessageSender.php | 25 ++----- .../MessageSender/MessageSenderInterface.php | 5 -- .../Business/Reader/ConfigReader.php | 15 ---- .../Business/Reader/ConfigReaderInterface.php | 6 -- .../SecretsManager/SecretsManager.php | 19 ++--- .../SecretsManagerInterface.php | 5 -- .../Business/Writer/ConfigWriter.php | 73 ++----------------- .../Business/Writer/ConfigWriterInterface.php | 5 -- .../AppKernelToSecretsManagerClientBridge.php | 13 +--- ...pKernelToSecretsManagerClientInterface.php | 10 --- .../AppKernelToMessageBrokerFacadeBridge.php | 8 +- ...ppKernelToMessageBrokerFacadeInterface.php | 5 -- .../AppKernelToUtilEncodingServiceBridge.php | 2 - ...ppKernelToUtilEncodingServiceInterface.php | 2 - .../AppKernelToUtilTextServiceBridge.php | 2 - .../AppKernelToUtilTextServiceInterface.php | 2 - .../Persistence/AppKernelEntityManager.php | 7 +- .../AppKernelEntityManagerInterface.php | 5 -- .../AppKernelPersistenceFactory.php | 9 --- .../Persistence/AppKernelRepository.php | 7 +- .../AppKernelRepositoryInterface.php | 6 -- .../Propel/Mapper/AppConfigMapper.php | 33 +++------ 49 files changed, 118 insertions(+), 576 deletions(-) diff --git a/composer.json b/composer.json index 736d3e3..ec21b3e 100644 --- a/composer.json +++ b/composer.json @@ -56,8 +56,8 @@ "test": "codecept build && codecept run", "test-cover": "codecept build && codecept run --coverage-xml", "rector": "vendor/bin/rector process src/Spryker/ --config rector.php --ansi", - "rector-diff": "vendor/bin/rector process src/Spryker/ --config rector.php --ansi --dry-run", - "local-ci": "composer cs-fix && composer cs-check && composer stan && composer rector-diff && composer test" + "rector-ci": "vendor/bin/rector process src/Spryker/ --config rector.php --ansi --dry-run", + "local-ci": "composer cs-fix && composer cs-check && composer stan && composer rector-ci && composer test" }, "extra": { "branch-alias": { diff --git a/phpcs.xml b/phpcs.xml index 1ae9962..014aa0a 100644 --- a/phpcs.xml +++ b/phpcs.xml @@ -10,21 +10,30 @@ src/ + config/ tests/ - src/Orm/* - src/Generated/* + */src/Generated/* + */src/Orm/*/Base/ + */src/Orm/*/Map/ + */src/Orm/Propel/ */tests/_support/_generated/* */tests/_helpers/* */tests/_output/* - + + + + + + + diff --git a/rector.php b/rector.php index f6b4d43..b440039 100644 --- a/rector.php +++ b/rector.php @@ -1,40 +1,61 @@ paths([ + __DIR__ . '/src/Spryker', + __DIR__ . '/tests/SprykerTest', + ]); - $rectorConfig->sets([ - SetList::PHP_80 + $rectorConfig->skip([ + '*/_support/_generated/*', ]); + $rectorConfig->import(SetList::CODE_QUALITY); + $rectorConfig->import(SetList::CODING_STYLE); + $rectorConfig->import(SetList::DEAD_CODE); + $rectorConfig->import(SetList::STRICT_BOOLEANS); + $rectorConfig->import(SetList::NAMING); + $rectorConfig->import(SetList::PHP_82); + $rectorConfig->import(SetList::TYPE_DECLARATION); + $rectorConfig->import(SetList::EARLY_RETURN); + $rectorConfig->import(SetList::INSTANCEOF); + $rectorConfig->ruleWithConfiguration(ClassPropertyAssignToConstructorPromotionRector::class, [ ClassPropertyAssignToConstructorPromotionRector::INLINE_PUBLIC => true, ]); $rectorConfig->skip([ - RemoveUselessParamTagRector::class, - RemoveUnusedPromotedPropertyRector::class, - RemoveUselessReturnTagRector::class, - RemoveUselessVarTagRector::class, - MixedTypeRector::class, + // Ignore this rule on the AppRouteProviderPlugin as it breaks the code + CallableThisArrayToAnonymousFunctionRector::class => [ + __DIR__ . '/src/Spryker/Glue/AppKernel/Plugin/RouteProvider/AppRouteProviderPlugin.php', + ], ClassPropertyAssignToConstructorPromotionRector::class => [ - '**/*Bridge.php', - '**/*Plugin.php', - '**/*Facade.php', - '**/*Factory.php', - '**/*Config.php', - '**/*DependencyProvider.php', - '**/*Interface.php', - '**/*Controller.php', + __DIR__ . '/src/Spryker/Zed/AppKernel/Dependency/Client/AppKernelToSecretsManagerClientBridge.php', + __DIR__ . '/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeBridge.php', + __DIR__ . '/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilEncodingServiceBridge.php', + __DIR__ . '/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilTextServiceBridge.php', + __DIR__ . '/src/Spryker/Glue/AppKernel/Dependency/Facade/AppKernelToAppKernelFacadeBridge.php', + ], + AddParamTypeFromPropertyTypeRector::class => [ + __DIR__ . '/src/Spryker/Zed/AppKernel/Dependency/Client/AppKernelToSecretsManagerClientBridge.php', + __DIR__ . '/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeBridge.php', + __DIR__ . '/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilEncodingServiceBridge.php', + __DIR__ . '/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilTextServiceBridge.php', + __DIR__ . '/src/Spryker/Glue/AppKernel/Dependency/Facade/AppKernelToAppKernelFacadeBridge.php', ], ]); }; - diff --git a/src/Spryker/Glue/AppKernel/AppKernelDependencyProvider.php b/src/Spryker/Glue/AppKernel/AppKernelDependencyProvider.php index 81da60b..c70d7bf 100644 --- a/src/Spryker/Glue/AppKernel/AppKernelDependencyProvider.php +++ b/src/Spryker/Glue/AppKernel/AppKernelDependencyProvider.php @@ -38,11 +38,6 @@ class AppKernelDependencyProvider extends AbstractBundleDependencyProvider */ public const PLUGINS_REQUEST_DISCONNECT_VALIDATOR = 'PLUGINS_REQUEST_DISCONNECT_VALIDATOR'; - /** - * @param \Spryker\Glue\Kernel\Backend\Container $glueBackendContainer - * - * @return \Spryker\Glue\Kernel\Backend\Container - */ public function provideBackendDependencies(GlueBackendContainer $glueBackendContainer): GlueBackendContainer { $glueBackendContainer = parent::provideBackendDependencies($glueBackendContainer); @@ -55,42 +50,27 @@ public function provideBackendDependencies(GlueBackendContainer $glueBackendCont return $glueBackendContainer; } - /** - * @param \Spryker\Glue\Kernel\Backend\Container $glueBackendContainer - * - * @return \Spryker\Glue\Kernel\Backend\Container - */ protected function addUtilEncodingService(GlueBackendContainer $glueBackendContainer): GlueBackendContainer { - $glueBackendContainer->set(static::SERVICE_UTIL_ENCODING, function (GlueBackendContainer $container) { - return $container->getLocator()->utilEncoding()->service(); + $glueBackendContainer->set(static::SERVICE_UTIL_ENCODING, static function (GlueBackendContainer $glueBackendContainer) { + return $glueBackendContainer->getLocator()->utilEncoding()->service(); }); return $glueBackendContainer; } - /** - * @param \Spryker\Glue\Kernel\Backend\Container $glueBackendContainer - * - * @return \Spryker\Glue\Kernel\Backend\Container - */ protected function addAppKernelFacade(GlueBackendContainer $glueBackendContainer): GlueBackendContainer { - $glueBackendContainer->set(static::FACADE_APP_KERNEL, function (GlueBackendContainer $container) { - return new AppKernelToAppKernelFacadeBridge($container->getLocator()->appKernel()->facade()); + $glueBackendContainer->set(static::FACADE_APP_KERNEL, static function (GlueBackendContainer $glueBackendContainer): AppKernelToAppKernelFacadeBridge { + return new AppKernelToAppKernelFacadeBridge($glueBackendContainer->getLocator()->appKernel()->facade()); }); return $glueBackendContainer; } - /** - * @param \Spryker\Glue\Kernel\Backend\Container $glueBackendContainer - * - * @return \Spryker\Glue\Kernel\Backend\Container - */ protected function addRequestConfigureValidatorPlugins(GlueBackendContainer $glueBackendContainer): GlueBackendContainer { - $glueBackendContainer->set(static::PLUGINS_REQUEST_CONFIGURE_VALIDATOR, function () { + $glueBackendContainer->set(static::PLUGINS_REQUEST_CONFIGURE_VALIDATOR, function (): array { return array_merge($this->getDefaultRequestConfigureValidatorPlugins(), $this->getRequestConfigureValidatorPlugins()); }); @@ -116,14 +96,9 @@ protected function getRequestConfigureValidatorPlugins(): array return []; } - /** - * @param \Spryker\Glue\Kernel\Backend\Container $glueBackendContainer - * - * @return \Spryker\Glue\Kernel\Backend\Container - */ protected function addRequestDisconnectValidatorPlugins(GlueBackendContainer $glueBackendContainer): GlueBackendContainer { - $glueBackendContainer->set(static::PLUGINS_REQUEST_DISCONNECT_VALIDATOR, function () { + $glueBackendContainer->set(static::PLUGINS_REQUEST_DISCONNECT_VALIDATOR, function (): array { return array_merge($this->getDefaultRequestDisconnectValidatorPlugins(), $this->getRequestDisconnectValidatorPlugins()); }); diff --git a/src/Spryker/Glue/AppKernel/AppKernelFactory.php b/src/Spryker/Glue/AppKernel/AppKernelFactory.php index ef97245..b60de16 100644 --- a/src/Spryker/Glue/AppKernel/AppKernelFactory.php +++ b/src/Spryker/Glue/AppKernel/AppKernelFactory.php @@ -23,17 +23,11 @@ class AppKernelFactory extends AbstractFactory { - /** - * @return \Spryker\Glue\AppKernel\Validator\RequestValidatorInterface - */ public function createHeaderValidator(): RequestValidatorInterface { return new HeaderValidator(); } - /** - * @return \Spryker\Glue\AppKernel\Validator\RequestValidatorInterface - */ public function createBodyStructureValidator(): RequestValidatorInterface { return new BodyStructureValidator( @@ -42,25 +36,16 @@ public function createBodyStructureValidator(): RequestValidatorInterface ); } - /** - * @return \Spryker\Glue\AppKernel\Builder\ResponseBuilderInterface - */ public function createResponseBuilder(): ResponseBuilderInterface { return new ResponseBuilder($this->getUtilEncodingService()); } - /** - * @return \Symfony\Component\Validator\Validator\ValidatorInterface - */ public function createValidator(): ValidatorInterface { return Validation::createValidator(); } - /** - * @return \Spryker\Glue\AppKernel\Mapper\GlueRequestMapperInterface - */ public function createGlueRequestMapper(): GlueRequestMapperInterface { return new GlueRequestMapper( @@ -68,33 +53,21 @@ public function createGlueRequestMapper(): GlueRequestMapperInterface ); } - /** - * @return \Spryker\Glue\AppKernel\Validator\RequestValidatorInterface - */ public function createApiRequestSaveConfigValidator(): RequestValidatorInterface { return new RequestValidator($this->getApiRequestConfigureValidatorPlugins()); } - /** - * @return \Spryker\Glue\AppKernel\Validator\RequestValidatorInterface - */ public function createApiRequestDisconnectValidator(): RequestValidatorInterface { return new RequestValidator($this->getApiRequestDisconnectValidatorPlugins()); } - /** - * @return \Spryker\Service\UtilEncoding\UtilEncodingServiceInterface - */ public function getUtilEncodingService(): UtilEncodingServiceInterface { return $this->getProvidedDependency(AppKernelDependencyProvider::SERVICE_UTIL_ENCODING); } - /** - * @return \Spryker\Glue\AppKernel\Dependency\Facade\AppKernelToAppKernelFacadeInterface - */ public function getAppKernelFacade(): AppKernelToAppKernelFacadeInterface { return $this->getProvidedDependency(AppKernelDependencyProvider::FACADE_APP_KERNEL); diff --git a/src/Spryker/Glue/AppKernel/Builder/ResponseBuilder.php b/src/Spryker/Glue/AppKernel/Builder/ResponseBuilder.php index 9857290..2264de3 100644 --- a/src/Spryker/Glue/AppKernel/Builder/ResponseBuilder.php +++ b/src/Spryker/Glue/AppKernel/Builder/ResponseBuilder.php @@ -16,18 +16,10 @@ class ResponseBuilder implements ResponseBuilderInterface { - /** - * @param \Spryker\Service\UtilEncoding\UtilEncodingServiceInterface $utilEncodingService - */ public function __construct(protected UtilEncodingServiceInterface $utilEncodingService) { } - /** - * @param \Generated\Shared\Transfer\GlueRequestValidationTransfer $glueRequestValidationTransfer - * - * @return \Generated\Shared\Transfer\GlueResponseTransfer - */ public function buildRequestNotValidResponse( GlueRequestValidationTransfer $glueRequestValidationTransfer ): GlueResponseTransfer { @@ -50,11 +42,6 @@ public function buildRequestNotValidResponse( ->setHttpStatus($glueRequestValidationTransfer->getStatus() ?? Response::HTTP_BAD_REQUEST); } - /** - * @param string $errorMessage - * - * @return \Generated\Shared\Transfer\GlueResponseTransfer - */ public function buildErrorResponse(string $errorMessage): GlueResponseTransfer { $errorData = $this->composeErrorArray($errorMessage); @@ -72,14 +59,12 @@ public function buildErrorResponse(string $errorMessage): GlueResponseTransfer /** * @param \Generated\Shared\Transfer\AppConfigTransfer|null $appConfigTransfer - * - * @return \Generated\Shared\Transfer\GlueResponseTransfer */ public function buildSuccessfulResponse(?AppConfigTransfer $appConfigTransfer = null): GlueResponseTransfer { $glueResponseTransfer = (new GlueResponseTransfer())->setHttpStatus(Response::HTTP_NO_CONTENT); - if ($appConfigTransfer) { + if ($appConfigTransfer instanceof AppConfigTransfer) { $content = [ 'tenantIdentifier' => $appConfigTransfer->getTenantIdentifier(), 'configuration' => $appConfigTransfer->getConfig(), @@ -94,8 +79,6 @@ public function buildSuccessfulResponse(?AppConfigTransfer $appConfigTransfer = } /** - * @param string $errorMessage - * * @return array */ protected function composeErrorArray(string $errorMessage): array diff --git a/src/Spryker/Glue/AppKernel/Builder/ResponseBuilderInterface.php b/src/Spryker/Glue/AppKernel/Builder/ResponseBuilderInterface.php index 59f56b2..b794e1b 100644 --- a/src/Spryker/Glue/AppKernel/Builder/ResponseBuilderInterface.php +++ b/src/Spryker/Glue/AppKernel/Builder/ResponseBuilderInterface.php @@ -13,26 +13,14 @@ interface ResponseBuilderInterface { - /** - * @param \Generated\Shared\Transfer\GlueRequestValidationTransfer $glueRequestValidationTransfer - * - * @return \Generated\Shared\Transfer\GlueResponseTransfer - */ public function buildRequestNotValidResponse( GlueRequestValidationTransfer $glueRequestValidationTransfer ): GlueResponseTransfer; - /** - * @param string $errorMessage - * - * @return \Generated\Shared\Transfer\GlueResponseTransfer - */ public function buildErrorResponse(string $errorMessage): GlueResponseTransfer; /** * @param \Generated\Shared\Transfer\AppConfigTransfer|null $appConfigTransfer - * - * @return \Generated\Shared\Transfer\GlueResponseTransfer */ public function buildSuccessfulResponse(?AppConfigTransfer $appConfigTransfer = null): GlueResponseTransfer; } diff --git a/src/Spryker/Glue/AppKernel/Controller/AppConfigController.php b/src/Spryker/Glue/AppKernel/Controller/AppConfigController.php index 16de612..66ecf63 100644 --- a/src/Spryker/Glue/AppKernel/Controller/AppConfigController.php +++ b/src/Spryker/Glue/AppKernel/Controller/AppConfigController.php @@ -20,11 +20,6 @@ */ class AppConfigController extends AbstractController { - /** - * @param \Generated\Shared\Transfer\GlueRequestTransfer $glueRequestTransfer - * - * @return \Generated\Shared\Transfer\GlueResponseTransfer - */ public function postConfigureAction(GlueRequestTransfer $glueRequestTransfer): GlueResponseTransfer { $glueRequestValidationTransfer = $this->getFactory()->createApiRequestSaveConfigValidator() @@ -54,17 +49,12 @@ public function postConfigureAction(GlueRequestTransfer $glueRequestTransfer): G ); } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ protected function updateStatus(AppConfigTransfer $appConfigTransfer): AppConfigTransfer { if ($appConfigTransfer->getStatus() === null) { try { $existingAppConfigTransfer = $this->getFactory()->getAppKernelFacade() - ->getConfig((new AppConfigCriteriaTransfer())->setTenantIdentifier($appConfigTransfer->getTenantIdentifier())); + ->getConfig((new AppConfigCriteriaTransfer())->setTenantIdentifier($appConfigTransfer->getTenantIdentifier())); $appConfigTransfer->setStatus($existingAppConfigTransfer->getStatus()); $appConfigTransfer->setIsActive($existingAppConfigTransfer->getIsActive()); diff --git a/src/Spryker/Glue/AppKernel/Controller/AppDisconnectController.php b/src/Spryker/Glue/AppKernel/Controller/AppDisconnectController.php index 440de29..c9ba9a6 100644 --- a/src/Spryker/Glue/AppKernel/Controller/AppDisconnectController.php +++ b/src/Spryker/Glue/AppKernel/Controller/AppDisconnectController.php @@ -20,11 +20,6 @@ */ class AppDisconnectController extends AbstractController { - /** - * @param \Generated\Shared\Transfer\GlueRequestTransfer $glueRequestTransfer - * - * @return \Generated\Shared\Transfer\GlueResponseTransfer - */ public function postDisconnectAction(GlueRequestTransfer $glueRequestTransfer): GlueResponseTransfer { $glueRequestValidationTransfer = $this->getFactory()->createApiRequestDisconnectValidator() @@ -50,16 +45,16 @@ public function postDisconnectAction(GlueRequestTransfer $glueRequestTransfer): $appConfigResponseTransfer = $this->getFactory() ->getAppKernelFacade() ->saveConfig($appConfigTransfer); - } catch (AppConfigNotFoundException $exception) { + } catch (AppConfigNotFoundException $appConfigNotFoundException) { return $this->getFactory() - ->createResponseBuilder() - ->buildErrorResponse($exception->getMessage()); + ->createResponseBuilder() + ->buildErrorResponse($appConfigNotFoundException->getMessage()); } if (!$appConfigResponseTransfer->getIsSuccessful()) { return $this->getFactory() - ->createResponseBuilder() - ->buildErrorResponse(AppKernelConfig::RESPONSE_MESSAGE_DISCONNECT_ERROR); + ->createResponseBuilder() + ->buildErrorResponse(AppKernelConfig::RESPONSE_MESSAGE_DISCONNECT_ERROR); } return $this->getFactory()->createResponseBuilder()->buildSuccessfulResponse(); diff --git a/src/Spryker/Glue/AppKernel/Dependency/Facade/AppKernelToAppKernelFacadeBridge.php b/src/Spryker/Glue/AppKernel/Dependency/Facade/AppKernelToAppKernelFacadeBridge.php index 7c1542c..bbd01b8 100644 --- a/src/Spryker/Glue/AppKernel/Dependency/Facade/AppKernelToAppKernelFacadeBridge.php +++ b/src/Spryker/Glue/AppKernel/Dependency/Facade/AppKernelToAppKernelFacadeBridge.php @@ -26,21 +26,11 @@ public function __construct($appKernelFacade) $this->appKernelFacade = $appKernelFacade; } - /** - * @param \Generated\Shared\Transfer\AppConfigCriteriaTransfer $appConfigCriteriaTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ public function getConfig(AppConfigCriteriaTransfer $appConfigCriteriaTransfer): AppConfigTransfer { return $this->appKernelFacade->getConfig($appConfigCriteriaTransfer, new AppConfigTransfer()); } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigResponseTransfer - */ public function saveConfig(AppConfigTransfer $appConfigTransfer): AppConfigResponseTransfer { return $this->appKernelFacade->saveConfig($appConfigTransfer); diff --git a/src/Spryker/Glue/AppKernel/Dependency/Facade/AppKernelToAppKernelFacadeInterface.php b/src/Spryker/Glue/AppKernel/Dependency/Facade/AppKernelToAppKernelFacadeInterface.php index 2f03f37..9e74feb 100644 --- a/src/Spryker/Glue/AppKernel/Dependency/Facade/AppKernelToAppKernelFacadeInterface.php +++ b/src/Spryker/Glue/AppKernel/Dependency/Facade/AppKernelToAppKernelFacadeInterface.php @@ -13,17 +13,7 @@ interface AppKernelToAppKernelFacadeInterface { - /** - * @param \Generated\Shared\Transfer\AppConfigCriteriaTransfer $appConfigCriteriaTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ public function getConfig(AppConfigCriteriaTransfer $appConfigCriteriaTransfer): AppConfigTransfer; - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigResponseTransfer - */ public function saveConfig(AppConfigTransfer $appConfigTransfer): AppConfigResponseTransfer; } diff --git a/src/Spryker/Glue/AppKernel/Mapper/GlueRequestMapper.php b/src/Spryker/Glue/AppKernel/Mapper/GlueRequestMapper.php index cba9791..d3738a3 100644 --- a/src/Spryker/Glue/AppKernel/Mapper/GlueRequestMapper.php +++ b/src/Spryker/Glue/AppKernel/Mapper/GlueRequestMapper.php @@ -14,19 +14,10 @@ class GlueRequestMapper implements GlueRequestMapperInterface { - /** - * @param \Spryker\Service\UtilEncoding\UtilEncodingServiceInterface $utilEncodingService - */ public function __construct(protected UtilEncodingServiceInterface $utilEncodingService) { } - /** - * @param \Generated\Shared\Transfer\GlueRequestTransfer $glueRequestTransfer - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ public function mapGlueRequestTransferToAppConfigTransfer( GlueRequestTransfer $glueRequestTransfer, AppConfigTransfer $appConfigTransfer @@ -40,19 +31,12 @@ public function mapGlueRequestTransferToAppConfigTransfer( return $appConfigTransfer; } - /** - * @param \Generated\Shared\Transfer\GlueRequestTransfer $glueRequestTransfer - * - * @return string - */ protected function getTenantIdentifier(GlueRequestTransfer $glueRequestTransfer): string { return $glueRequestTransfer->getMeta()[AppKernelConfig::HEADER_TENANT_IDENTIFIER][0]; } /** - * @param \Generated\Shared\Transfer\GlueRequestTransfer $glueRequestTransfer - * * @return array */ protected function getConfiguration(GlueRequestTransfer $glueRequestTransfer): array diff --git a/src/Spryker/Glue/AppKernel/Mapper/GlueRequestMapperInterface.php b/src/Spryker/Glue/AppKernel/Mapper/GlueRequestMapperInterface.php index 370da65..52ad52f 100644 --- a/src/Spryker/Glue/AppKernel/Mapper/GlueRequestMapperInterface.php +++ b/src/Spryker/Glue/AppKernel/Mapper/GlueRequestMapperInterface.php @@ -12,12 +12,6 @@ interface GlueRequestMapperInterface { - /** - * @param \Generated\Shared\Transfer\GlueRequestTransfer $glueRequestTransfer - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ public function mapGlueRequestTransferToAppConfigTransfer( GlueRequestTransfer $glueRequestTransfer, AppConfigTransfer $appConfigTransfer diff --git a/src/Spryker/Glue/AppKernel/Plugin/RequestValidator/BodyStructureValidatorPlugin.php b/src/Spryker/Glue/AppKernel/Plugin/RequestValidator/BodyStructureValidatorPlugin.php index 7b1f4db..baac3ef 100644 --- a/src/Spryker/Glue/AppKernel/Plugin/RequestValidator/BodyStructureValidatorPlugin.php +++ b/src/Spryker/Glue/AppKernel/Plugin/RequestValidator/BodyStructureValidatorPlugin.php @@ -22,10 +22,6 @@ class BodyStructureValidatorPlugin extends AbstractPlugin implements RequestVali * - Validates request data structure * * @api - * - * @param \Generated\Shared\Transfer\GlueRequestTransfer $glueRequestTransfer - * - * @return \Generated\Shared\Transfer\GlueRequestValidationTransfer */ public function validate(GlueRequestTransfer $glueRequestTransfer): GlueRequestValidationTransfer { diff --git a/src/Spryker/Glue/AppKernel/Plugin/RequestValidator/HeaderValidatorPlugin.php b/src/Spryker/Glue/AppKernel/Plugin/RequestValidator/HeaderValidatorPlugin.php index 5794739..b06cddc 100644 --- a/src/Spryker/Glue/AppKernel/Plugin/RequestValidator/HeaderValidatorPlugin.php +++ b/src/Spryker/Glue/AppKernel/Plugin/RequestValidator/HeaderValidatorPlugin.php @@ -22,10 +22,6 @@ class HeaderValidatorPlugin extends AbstractPlugin implements RequestValidatorPl * - Checks if X-Tenant-Identifier is present in headers * * @api - * - * @param \Generated\Shared\Transfer\GlueRequestTransfer $glueRequestTransfer - * - * @return \Generated\Shared\Transfer\GlueRequestValidationTransfer */ public function validate(GlueRequestTransfer $glueRequestTransfer): GlueRequestValidationTransfer { diff --git a/src/Spryker/Glue/AppKernel/Plugin/RouteProvider/AppRouteProviderPlugin.php b/src/Spryker/Glue/AppKernel/Plugin/RouteProvider/AppRouteProviderPlugin.php index ed62150..cbfa3ff 100644 --- a/src/Spryker/Glue/AppKernel/Plugin/RouteProvider/AppRouteProviderPlugin.php +++ b/src/Spryker/Glue/AppKernel/Plugin/RouteProvider/AppRouteProviderPlugin.php @@ -18,11 +18,6 @@ class AppRouteProviderPlugin extends AbstractPlugin implements RouteProviderPluginInterface { - /** - * @param \Symfony\Component\Routing\RouteCollection $routeCollection - * - * @return \Symfony\Component\Routing\RouteCollection - */ public function addRoutes(RouteCollection $routeCollection): RouteCollection { $routeCollection->add('postConfigure', $this->getPostConfigureRoute()); @@ -31,29 +26,23 @@ public function addRoutes(RouteCollection $routeCollection): RouteCollection return $routeCollection; } - /** - * @return \Symfony\Component\Routing\Route - */ protected function getPostConfigureRoute(): Route { return (new Route(AppKernelConfig::CONFIGURE_ROUTE_PATH)) - ->setDefaults([ - '_controller' => [AppConfigController::class, 'postConfigureAction'], - '_resourceName' => 'App', - ]) - ->setMethods(Request::METHOD_POST); + ->setDefaults([ + '_controller' => [AppConfigController::class, 'postConfigureAction'], + '_resourceName' => 'App', + ]) + ->setMethods(Request::METHOD_POST); } - /** - * @return \Symfony\Component\Routing\Route - */ protected function getPostDisconnectRoute(): Route { return (new Route(AppKernelConfig::DISCONNECT_ROUTE_PATH)) - ->setDefaults([ - '_controller' => [AppDisconnectController::class, 'postDisconnectAction'], - '_resourceName' => 'App', - ]) - ->setMethods(Request::METHOD_POST); + ->setDefaults([ + '_controller' => [AppDisconnectController::class, 'postDisconnectAction'], + '_resourceName' => 'App', + ]) + ->setMethods(Request::METHOD_POST); } } diff --git a/src/Spryker/Glue/AppKernel/Validator/BodyStructureValidator.php b/src/Spryker/Glue/AppKernel/Validator/BodyStructureValidator.php index afd5701..e58aa59 100644 --- a/src/Spryker/Glue/AppKernel/Validator/BodyStructureValidator.php +++ b/src/Spryker/Glue/AppKernel/Validator/BodyStructureValidator.php @@ -23,21 +23,12 @@ class BodyStructureValidator implements RequestValidatorInterface { - /** - * @param \Symfony\Component\Validator\Validator\ValidatorInterface $validator - * @param \Spryker\Service\UtilEncoding\UtilEncodingServiceInterface $utilEncodingService - */ public function __construct( protected ValidatorInterface $validator, protected UtilEncodingServiceInterface $utilEncodingService ) { } - /** - * @param \Generated\Shared\Transfer\GlueRequestTransfer $glueRequestTransfer - * - * @return \Generated\Shared\Transfer\GlueRequestValidationTransfer - */ public function validate(GlueRequestTransfer $glueRequestTransfer): GlueRequestValidationTransfer { $glueRequestValidationTransfer = (new GlueRequestValidationTransfer()) @@ -62,9 +53,6 @@ public function validate(GlueRequestTransfer $glueRequestTransfer): GlueRequestV return $glueRequestValidationTransfer; } - /** - * @return \Symfony\Component\Validator\Constraints\Collection - */ protected function getConstraintForRequestStructure(): Collection { return new Collection([ diff --git a/src/Spryker/Glue/AppKernel/Validator/HeaderValidator.php b/src/Spryker/Glue/AppKernel/Validator/HeaderValidator.php index 8055ef0..de3b966 100644 --- a/src/Spryker/Glue/AppKernel/Validator/HeaderValidator.php +++ b/src/Spryker/Glue/AppKernel/Validator/HeaderValidator.php @@ -15,11 +15,6 @@ class HeaderValidator implements RequestValidatorInterface { - /** - * @param \Generated\Shared\Transfer\GlueRequestTransfer $glueRequestTransfer - * - * @return \Generated\Shared\Transfer\GlueRequestValidationTransfer - */ public function validate(GlueRequestTransfer $glueRequestTransfer): GlueRequestValidationTransfer { $glueRequestValidationTransfer = (new GlueRequestValidationTransfer()) diff --git a/src/Spryker/Glue/AppKernel/Validator/RequestValidator.php b/src/Spryker/Glue/AppKernel/Validator/RequestValidator.php index 44ef82b..a2f6dbb 100644 --- a/src/Spryker/Glue/AppKernel/Validator/RequestValidator.php +++ b/src/Spryker/Glue/AppKernel/Validator/RequestValidator.php @@ -19,15 +19,10 @@ public function __construct(protected array $requestValidatorPlugins) { } - /** - * @param \Generated\Shared\Transfer\GlueRequestTransfer $glueRequestTransfer - * - * @return \Generated\Shared\Transfer\GlueRequestValidationTransfer - */ public function validate(GlueRequestTransfer $glueRequestTransfer): GlueRequestValidationTransfer { - foreach ($this->requestValidatorPlugins as $validatorPlugin) { - $glueRequestValidationTransfer = $validatorPlugin->validate($glueRequestTransfer); + foreach ($this->requestValidatorPlugins as $requestValidatorPlugin) { + $glueRequestValidationTransfer = $requestValidatorPlugin->validate($glueRequestTransfer); if (!$glueRequestValidationTransfer->getIsValid()) { return $glueRequestValidationTransfer; diff --git a/src/Spryker/Glue/AppKernel/Validator/RequestValidatorInterface.php b/src/Spryker/Glue/AppKernel/Validator/RequestValidatorInterface.php index 3c0c1bd..e496145 100644 --- a/src/Spryker/Glue/AppKernel/Validator/RequestValidatorInterface.php +++ b/src/Spryker/Glue/AppKernel/Validator/RequestValidatorInterface.php @@ -12,10 +12,5 @@ interface RequestValidatorInterface { - /** - * @param \Generated\Shared\Transfer\GlueRequestTransfer $glueRequestTransfer - * - * @return \Generated\Shared\Transfer\GlueRequestValidationTransfer - */ public function validate(GlueRequestTransfer $glueRequestTransfer): GlueRequestValidationTransfer; } diff --git a/src/Spryker/Zed/AppKernel/AppKernelConfig.php b/src/Spryker/Zed/AppKernel/AppKernelConfig.php index 0018323..f391b36 100644 --- a/src/Spryker/Zed/AppKernel/AppKernelConfig.php +++ b/src/Spryker/Zed/AppKernel/AppKernelConfig.php @@ -24,8 +24,6 @@ class AppKernelConfig extends AbstractBundleConfig /** * @api - * - * @return string */ public function getAppIdentifier(): string { diff --git a/src/Spryker/Zed/AppKernel/AppKernelDependencyProvider.php b/src/Spryker/Zed/AppKernel/AppKernelDependencyProvider.php index 119ef75..e977e20 100644 --- a/src/Spryker/Zed/AppKernel/AppKernelDependencyProvider.php +++ b/src/Spryker/Zed/AppKernel/AppKernelDependencyProvider.php @@ -60,11 +60,6 @@ class AppKernelDependencyProvider extends AbstractBundleDependencyProvider */ public const PLUGIN_CONFIGURATION_AFTER_DELETE_PLUGINS = 'APP_KERNEL:PLUGIN_CONFIGURATION_AFTER_DELETE_PLUGINS'; - /** - * @param \Spryker\Zed\Kernel\Container $container - * - * @return \Spryker\Zed\Kernel\Container - */ public function provideBusinessLayerDependencies(Container $container): Container { $container = parent::provideBusinessLayerDependencies($container); @@ -80,24 +75,13 @@ public function provideBusinessLayerDependencies(Container $container): Containe return $container; } - /** - * @param \Spryker\Zed\Kernel\Container $container - * - * @return \Spryker\Zed\Kernel\Container - */ public function providePersistenceLayerDependencies(Container $container): Container { $container = parent::providePersistenceLayerDependencies($container); - $container = $this->addUtilEncodingService($container); - return $container; + return $this->addUtilEncodingService($container); } - /** - * @param \Spryker\Zed\Kernel\Container $container - * - * @return \Spryker\Zed\Kernel\Container - */ protected function addMessageBrokerFacade(Container $container): Container { $container->set(static::FACADE_MESSAGE_BROKER, static function (Container $container): AppKernelToMessageBrokerFacadeInterface { @@ -107,56 +91,36 @@ protected function addMessageBrokerFacade(Container $container): Container return $container; } - /** - * @param \Spryker\Zed\Kernel\Container $container - * - * @return \Spryker\Zed\Kernel\Container - */ protected function addSecretsManagerClient(Container $container): Container { - $container->set(static::CLIENT_SECRETS_MANAGER, function (Container $container) { + $container->set(static::CLIENT_SECRETS_MANAGER, static function (Container $container): AppKernelToSecretsManagerClientBridge { return new AppKernelToSecretsManagerClientBridge($container->getLocator()->secretsManager()->client()); }); return $container; } - /** - * @param \Spryker\Zed\Kernel\Container $container - * - * @return \Spryker\Zed\Kernel\Container - */ protected function addUtilTextService(Container $container): Container { - $container->set(static::SERVICE_UTIL_TEXT, function (Container $container) { + $container->set(static::SERVICE_UTIL_TEXT, static function (Container $container): AppKernelToUtilTextServiceBridge { return new AppKernelToUtilTextServiceBridge($container->getLocator()->utilText()->service()); }); return $container; } - /** - * @param \Spryker\Zed\Kernel\Container $container - * - * @return \Spryker\Zed\Kernel\Container - */ protected function addUtilEncodingService(Container $container): Container { - $container->set(static::SERVICE_UTIL_ENCODING, function (Container $container) { + $container->set(static::SERVICE_UTIL_ENCODING, static function (Container $container): AppKernelToUtilEncodingServiceBridge { return new AppKernelToUtilEncodingServiceBridge($container->getLocator()->utilEncoding()->service()); }); return $container; } - /** - * @param \Spryker\Zed\Kernel\Container $container - * - * @return \Spryker\Zed\Kernel\Container - */ protected function addConfigurationBeforeSavePlugins(Container $container): Container { - $container->set(static::PLUGIN_CONFIGURATION_BEFORE_SAVE_PLUGINS, function (Container $container) { + $container->set(static::PLUGIN_CONFIGURATION_BEFORE_SAVE_PLUGINS, function (Container $container): array { return $this->getConfigurationBeforeSavePlugins(); }); @@ -171,14 +135,9 @@ protected function getConfigurationBeforeSavePlugins(): array return []; } - /** - * @param \Spryker\Zed\Kernel\Container $container - * - * @return \Spryker\Zed\Kernel\Container - */ protected function addConfigurationAfterSavePlugins(Container $container): Container { - $container->set(static::PLUGIN_CONFIGURATION_AFTER_SAVE_PLUGINS, function (Container $container) { + $container->set(static::PLUGIN_CONFIGURATION_AFTER_SAVE_PLUGINS, function (Container $container): array { return $this->getConfigurationAfterSavePlugins(); }); @@ -193,14 +152,9 @@ protected function getConfigurationAfterSavePlugins(): array return []; } - /** - * @param \Spryker\Zed\Kernel\Container $container - * - * @return \Spryker\Zed\Kernel\Container - */ protected function addConfigurationBeforeDeletePlugins(Container $container): Container { - $container->set(static::PLUGIN_CONFIGURATION_BEFORE_DELETE_PLUGINS, function (Container $container) { + $container->set(static::PLUGIN_CONFIGURATION_BEFORE_DELETE_PLUGINS, function (Container $container): array { return $this->getConfigurationBeforeDeletePlugins(); }); @@ -215,14 +169,9 @@ protected function getConfigurationBeforeDeletePlugins(): array return []; } - /** - * @param \Spryker\Zed\Kernel\Container $container - * - * @return \Spryker\Zed\Kernel\Container - */ protected function addConfigurationAfterDeletePlugins(Container $container): Container { - $container->set(static::PLUGIN_CONFIGURATION_AFTER_DELETE_PLUGINS, function (Container $container) { + $container->set(static::PLUGIN_CONFIGURATION_AFTER_DELETE_PLUGINS, function (Container $container): array { return $this->getConfigurationAfterDeletePlugins(); }); diff --git a/src/Spryker/Zed/AppKernel/Business/AppKernelBusinessFactory.php b/src/Spryker/Zed/AppKernel/Business/AppKernelBusinessFactory.php index 5f1025c..db8598a 100644 --- a/src/Spryker/Zed/AppKernel/Business/AppKernelBusinessFactory.php +++ b/src/Spryker/Zed/AppKernel/Business/AppKernelBusinessFactory.php @@ -30,9 +30,6 @@ */ class AppKernelBusinessFactory extends AbstractBusinessFactory { - /** - * @return \Spryker\Zed\AppKernel\Business\Writer\ConfigWriterInterface - */ public function createConfigWriter(): ConfigWriterInterface { return new ConfigWriter( @@ -47,9 +44,6 @@ public function createConfigWriter(): ConfigWriterInterface ); } - /** - * @return \Spryker\Zed\AppKernel\Business\Reader\ConfigReaderInterface - */ public function createConfigReader(): ConfigReaderInterface { return new ConfigReader( @@ -58,9 +52,6 @@ public function createConfigReader(): ConfigReaderInterface ); } - /** - * @return \Spryker\Zed\AppKernel\Business\EncryptionConfigurator\PropelEncryptionConfiguratorInterface - */ public function createPropelEncryptionConfigurator(): PropelEncryptionConfiguratorInterface { return new PropelEncryptionConfigurator( @@ -68,9 +59,6 @@ public function createPropelEncryptionConfigurator(): PropelEncryptionConfigurat ); } - /** - * @return \Spryker\Zed\AppKernel\Business\SecretsManager\SecretsManagerInterface - */ public function createSecretsManager(): SecretsManagerInterface { return new SecretsManager( @@ -79,25 +67,16 @@ public function createSecretsManager(): SecretsManagerInterface ); } - /** - * @return \Spryker\Zed\AppKernel\Business\MessageSender\MessageSenderInterface - */ public function createMessageSender(): MessageSenderInterface { return new MessageSender($this->getMessageBrokerFacade(), $this->getConfig()); } - /** - * @return \Spryker\Zed\AppKernel\Dependency\Client\AppKernelToSecretsManagerClientInterface - */ public function getSecretsManagerClient(): AppKernelToSecretsManagerClientInterface { return $this->getProvidedDependency(AppKernelDependencyProvider::CLIENT_SECRETS_MANAGER); } - /** - * @return \Spryker\Zed\AppKernel\Dependency\Service\AppKernelToUtilTextServiceInterface - */ public function getTextServiceUtil(): AppKernelToUtilTextServiceInterface { return $this->getProvidedDependency(AppKernelDependencyProvider::SERVICE_UTIL_TEXT); @@ -135,9 +114,6 @@ public function getConfigurationAfterDeletePlugins(): array return $this->getProvidedDependency(AppKernelDependencyProvider::PLUGIN_CONFIGURATION_AFTER_DELETE_PLUGINS); } - /** - * @return \Spryker\Zed\AppKernel\Dependency\Facade\AppKernelToMessageBrokerFacadeInterface - */ public function getMessageBrokerFacade(): AppKernelToMessageBrokerFacadeInterface { return $this->getProvidedDependency(AppKernelDependencyProvider::FACADE_MESSAGE_BROKER); diff --git a/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php b/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php index af7c4be..fe6d0a5 100644 --- a/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php +++ b/src/Spryker/Zed/AppKernel/Business/AppKernelFacade.php @@ -24,10 +24,6 @@ class AppKernelFacade extends AbstractFacade implements AppKernelFacadeInterface * {@inheritDoc} * * @api - * - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigResponseTransfer */ public function saveConfig(AppConfigTransfer $appConfigTransfer): AppConfigResponseTransfer { @@ -43,7 +39,6 @@ public function saveConfig(AppConfigTransfer $appConfigTransfer): AppConfigRespo * * @template T of \Spryker\Shared\Kernel\Transfer\TransferInterface * - * @param \Generated\Shared\Transfer\AppConfigCriteriaTransfer $appConfigCriteriaTransfer * @param T $transfer * * @return T diff --git a/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php b/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php index 88b3452..05a59a0 100644 --- a/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/AppKernelFacadeInterface.php @@ -29,10 +29,6 @@ interface AppKernelFacadeInterface * - Returns a failed `AppConfigResponseTransfer` when configuration could not be written to the database. * * @api - * - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigResponseTransfer */ public function saveConfig(AppConfigTransfer $appConfigTransfer): AppConfigResponseTransfer; @@ -49,7 +45,6 @@ public function saveConfig(AppConfigTransfer $appConfigTransfer): AppConfigRespo * * @template T of \Spryker\Shared\Kernel\Transfer\TransferInterface * - * @param \Generated\Shared\Transfer\AppConfigCriteriaTransfer $appConfigCriteriaTransfer * @param T $transfer * * @return T diff --git a/src/Spryker/Zed/AppKernel/Business/EncryptionConfigurator/PropelEncryptionConfigurator.php b/src/Spryker/Zed/AppKernel/Business/EncryptionConfigurator/PropelEncryptionConfigurator.php index e0bb037..759b054 100644 --- a/src/Spryker/Zed/AppKernel/Business/EncryptionConfigurator/PropelEncryptionConfigurator.php +++ b/src/Spryker/Zed/AppKernel/Business/EncryptionConfigurator/PropelEncryptionConfigurator.php @@ -15,18 +15,10 @@ class PropelEncryptionConfigurator implements PropelEncryptionConfiguratorInterf { use LoggerTrait; - /** - * @param \Spryker\Zed\AppKernel\Business\SecretsManager\SecretsManagerInterface $secretsManager - */ public function __construct(protected SecretsManagerInterface $secretsManager) { } - /** - * @param string $tenantIdentifier - * - * @return bool - */ public function configurePropelEncryption(string $tenantIdentifier): bool { $passphrase = $this->secretsManager->getPassphrase($tenantIdentifier); diff --git a/src/Spryker/Zed/AppKernel/Business/EncryptionConfigurator/PropelEncryptionConfiguratorInterface.php b/src/Spryker/Zed/AppKernel/Business/EncryptionConfigurator/PropelEncryptionConfiguratorInterface.php index dbb14cd..3019104 100644 --- a/src/Spryker/Zed/AppKernel/Business/EncryptionConfigurator/PropelEncryptionConfiguratorInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/EncryptionConfigurator/PropelEncryptionConfiguratorInterface.php @@ -9,10 +9,5 @@ interface PropelEncryptionConfiguratorInterface { - /** - * @param string $tenantIdentifier - * - * @return bool - */ public function configurePropelEncryption(string $tenantIdentifier): bool; } diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php index 6881a54..a6597c0 100644 --- a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSender.php @@ -15,48 +15,33 @@ class MessageSender implements MessageSenderInterface { - /** - * @param \Spryker\Zed\AppKernel\Dependency\Facade\AppKernelToMessageBrokerFacadeInterface $messageBrokerFacade - * @param \Spryker\Zed\AppKernel\AppKernelConfig $config - */ - public function __construct(protected AppKernelToMessageBrokerFacadeInterface $messageBrokerFacade, protected AppKernelConfig $config) + public function __construct(protected AppKernelToMessageBrokerFacadeInterface $appKernelToMessageBrokerFacade, protected AppKernelConfig $appKernelConfig) { } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ public function sendAppConfigUpdatedMessage(AppConfigTransfer $appConfigTransfer): AppConfigTransfer { $appConfigUpdatedTransfer = new AppConfigUpdatedTransfer(); $appConfigUpdatedTransfer->fromArray($appConfigTransfer->toArray(), true); $appConfigUpdatedTransfer - ->setAppIdentifier($this->config->getAppIdentifier()); + ->setAppIdentifier($this->appKernelConfig->getAppIdentifier()); $appConfigUpdatedTransfer->setMessageAttributes($this->getMessageAttributes( $appConfigTransfer->getTenantIdentifierOrFail(), $appConfigTransfer::class, )); - $this->messageBrokerFacade->sendMessage($appConfigUpdatedTransfer); + $this->appKernelToMessageBrokerFacade->sendMessage($appConfigUpdatedTransfer); return $appConfigTransfer; } - /** - * @param string $tenantIdentifier - * @param string $transferName - * - * @return \Generated\Shared\Transfer\MessageAttributesTransfer - */ protected function getMessageAttributes(string $tenantIdentifier, string $transferName): MessageAttributesTransfer { $messageAttributesTransfer = new MessageAttributesTransfer(); $messageAttributesTransfer - ->setActorId($this->config->getAppIdentifier()) - ->setEmitter($this->config->getAppIdentifier()) + ->setActorId($this->appKernelConfig->getAppIdentifier()) + ->setEmitter($this->appKernelConfig->getAppIdentifier()) ->setTenantIdentifier($tenantIdentifier) ->setStoreReference($tenantIdentifier) ->setTransferName($transferName); diff --git a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php index ebb9bd8..1853b43 100644 --- a/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/MessageSender/MessageSenderInterface.php @@ -11,10 +11,5 @@ interface MessageSenderInterface { - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ public function sendAppConfigUpdatedMessage(AppConfigTransfer $appConfigTransfer): AppConfigTransfer; } diff --git a/src/Spryker/Zed/AppKernel/Business/Reader/ConfigReader.php b/src/Spryker/Zed/AppKernel/Business/Reader/ConfigReader.php index 7aefde6..021acf7 100644 --- a/src/Spryker/Zed/AppKernel/Business/Reader/ConfigReader.php +++ b/src/Spryker/Zed/AppKernel/Business/Reader/ConfigReader.php @@ -18,22 +18,12 @@ class ConfigReader implements ConfigReaderInterface { use LoggerTrait; - /** - * @param \Spryker\Zed\AppKernel\Persistence\AppKernelRepositoryInterface $appKernelRepository - * @param \Spryker\Zed\AppKernel\Business\EncryptionConfigurator\PropelEncryptionConfiguratorInterface $propelEncryptionConfigurator - */ public function __construct( protected AppKernelRepositoryInterface $appKernelRepository, protected PropelEncryptionConfiguratorInterface $propelEncryptionConfigurator ) { } - /** - * @param \Generated\Shared\Transfer\AppConfigCriteriaTransfer $appConfigCriteriaTransfer - * @param \Spryker\Shared\Kernel\Transfer\TransferInterface $transfer - * - * @return \Spryker\Shared\Kernel\Transfer\TransferInterface - */ public function getAppConfigByCriteria(AppConfigCriteriaTransfer $appConfigCriteriaTransfer, TransferInterface $transfer): TransferInterface { $this->configurePropelEncryption($appConfigCriteriaTransfer); @@ -41,11 +31,6 @@ public function getAppConfigByCriteria(AppConfigCriteriaTransfer $appConfigCrite return $this->appKernelRepository->findAppConfigByCriteria($appConfigCriteriaTransfer, $transfer); } - /** - * @param \Generated\Shared\Transfer\AppConfigCriteriaTransfer $appConfigCriteriaTransfer - * - * @return void - */ protected function configurePropelEncryption(AppConfigCriteriaTransfer $appConfigCriteriaTransfer): void { try { diff --git a/src/Spryker/Zed/AppKernel/Business/Reader/ConfigReaderInterface.php b/src/Spryker/Zed/AppKernel/Business/Reader/ConfigReaderInterface.php index 0d43e76..79e0e92 100644 --- a/src/Spryker/Zed/AppKernel/Business/Reader/ConfigReaderInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/Reader/ConfigReaderInterface.php @@ -12,11 +12,5 @@ interface ConfigReaderInterface { - /** - * @param \Generated\Shared\Transfer\AppConfigCriteriaTransfer $appConfigCriteriaTransfer - * @param \Spryker\Shared\Kernel\Transfer\TransferInterface $transfer - * - * @return \Spryker\Shared\Kernel\Transfer\TransferInterface - */ public function getAppConfigByCriteria(AppConfigCriteriaTransfer $appConfigCriteriaTransfer, TransferInterface $transfer): TransferInterface; } diff --git a/src/Spryker/Zed/AppKernel/Business/SecretsManager/SecretsManager.php b/src/Spryker/Zed/AppKernel/Business/SecretsManager/SecretsManager.php index 7f2a4b3..f2d190e 100644 --- a/src/Spryker/Zed/AppKernel/Business/SecretsManager/SecretsManager.php +++ b/src/Spryker/Zed/AppKernel/Business/SecretsManager/SecretsManager.php @@ -31,13 +31,9 @@ class SecretsManager implements SecretsManagerInterface */ protected const SECRET_KEY_TAG_VALUE = 'tenant_key'; - /** - * @param \Spryker\Zed\AppKernel\Dependency\Client\AppKernelToSecretsManagerClientInterface $secretsManagerClient - * @param \Spryker\Zed\AppKernel\Dependency\Service\AppKernelToUtilTextServiceInterface $utilTextService - */ public function __construct( - protected AppKernelToSecretsManagerClientInterface $secretsManagerClient, - protected AppKernelToUtilTextServiceInterface $utilTextService + protected AppKernelToSecretsManagerClientInterface $appKernelToSecretsManagerClient, + protected AppKernelToUtilTextServiceInterface $appKernelToUtilTextService ) { } @@ -53,7 +49,7 @@ public function getPassphrase(string $tenantIdentifier): string $secretTransfer = (new SecretTransfer()) ->setSecretKey($secretKeyTransfer); - $secretTransfer = $this->secretsManagerClient->getSecret($secretTransfer); + $secretTransfer = $this->appKernelToSecretsManagerClient->getSecret($secretTransfer); $passphrase = $secretTransfer->getValue(); @@ -65,16 +61,11 @@ public function getPassphrase(string $tenantIdentifier): string } /** - * @param \Generated\Shared\Transfer\SecretTransfer $secretTransfer - * @param string $tenantIdentifier - * * @throws \Spryker\Zed\AppKernel\Business\Exception\SecretNotCreatedException - * - * @return \Generated\Shared\Transfer\SecretTransfer */ public function createSecret(SecretTransfer $secretTransfer, string $tenantIdentifier): SecretTransfer { - $passphrase = $this->utilTextService->generateRandomString(128); + $passphrase = $this->appKernelToUtilTextService->generateRandomString(128); $secretTagTransfer = (new SecretTagTransfer()) ->setKey(static::SECRET_KEY_TAG_KEY) @@ -83,7 +74,7 @@ public function createSecret(SecretTransfer $secretTransfer, string $tenantIdent $secretTransfer->setValue($passphrase) ->addSecretTag($secretTagTransfer); - $isSuccessful = $this->secretsManagerClient->createSecret($secretTransfer); + $isSuccessful = $this->appKernelToSecretsManagerClient->createSecret($secretTransfer); if (!$isSuccessful) { throw new SecretNotCreatedException( diff --git a/src/Spryker/Zed/AppKernel/Business/SecretsManager/SecretsManagerInterface.php b/src/Spryker/Zed/AppKernel/Business/SecretsManager/SecretsManagerInterface.php index d74a0f8..1d787d5 100644 --- a/src/Spryker/Zed/AppKernel/Business/SecretsManager/SecretsManagerInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/SecretsManager/SecretsManagerInterface.php @@ -9,10 +9,5 @@ interface SecretsManagerInterface { - /** - * @param string $tenantIdentifier - * - * @return string - */ public function getPassphrase(string $tenantIdentifier): string; } diff --git a/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriter.php b/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriter.php index ff01b55..7043283 100644 --- a/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriter.php +++ b/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriter.php @@ -30,17 +30,13 @@ class ConfigWriter implements ConfigWriterInterface protected const FAILED_TO_REGISTER_TENANT_MESSAGE = 'Tenant registration failed'; /** - * @param \Spryker\Zed\AppKernel\Persistence\AppKernelEntityManagerInterface $appEntityManager - * @param \Spryker\Zed\AppKernel\Persistence\AppKernelRepositoryInterface $appKernelRepository - * @param \Spryker\Zed\AppKernel\Business\EncryptionConfigurator\PropelEncryptionConfiguratorInterface $propelEncryptionConfigurator - * @param \Spryker\Zed\AppKernel\Business\MessageSender\MessageSenderInterface $messageSender * @param array<\Spryker\Zed\AppKernelExtension\Dependency\Plugin\ConfigurationBeforeSavePluginInterface> $configurationBeforeSavePlugins * @param array<\Spryker\Zed\AppKernelExtension\Dependency\Plugin\ConfigurationAfterSavePluginInterface> $configurationAfterSavePlugins * @param array<\Spryker\Zed\AppKernelExtension\Dependency\Plugin\ConfigurationBeforeDeletePluginInterface> $configurationBeforeDeletePlugin * @param array<\Spryker\Zed\AppKernelExtension\Dependency\Plugin\ConfigurationAfterDeletePluginInterface> $configurationAfterDeletePlugin */ public function __construct( - protected AppKernelEntityManagerInterface $appEntityManager, + protected AppKernelEntityManagerInterface $appKernelEntityManager, protected AppKernelRepositoryInterface $appKernelRepository, protected PropelEncryptionConfiguratorInterface $propelEncryptionConfigurator, protected MessageSenderInterface $messageSender, @@ -51,15 +47,10 @@ public function __construct( ) { } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigResponseTransfer - */ public function saveConfig(AppConfigTransfer $appConfigTransfer): AppConfigResponseTransfer { try { - $appConfigTransfer = $this->getTransactionHandler()->handleTransaction(function () use ($appConfigTransfer) { + $appConfigTransfer = $this->getTransactionHandler()->handleTransaction(function () use ($appConfigTransfer): \Generated\Shared\Transfer\AppConfigTransfer { return $this->doSaveAppConfig($appConfigTransfer); }); @@ -77,33 +68,23 @@ public function saveConfig(AppConfigTransfer $appConfigTransfer): AppConfigRespo } } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ protected function doSaveAppConfig(AppConfigTransfer $appConfigTransfer): AppConfigTransfer { $appConfigTransfer = $this->executeBeforePlugins($appConfigTransfer); $this->configurePropelEncryption($appConfigTransfer); - if (!$appConfigTransfer->getStatus()) { + if ($appConfigTransfer->getStatus() === null || $appConfigTransfer->getStatus() === '' || $appConfigTransfer->getStatus() === '0') { $appConfigTransfer->setStatus(AppKernelConfig::APP_STATUS_NEW); } - $appConfigTransfer = $this->appEntityManager->saveConfig($appConfigTransfer); + $appConfigTransfer = $this->appKernelEntityManager->saveConfig($appConfigTransfer); $appConfigTransfer = $this->executeAfterPlugins($appConfigTransfer); return $this->messageSender->sendAppConfigUpdatedMessage($appConfigTransfer); } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ protected function executeBeforePlugins(AppConfigTransfer $appConfigTransfer): AppConfigTransfer { if ($appConfigTransfer->getIsActive() !== false) { @@ -113,11 +94,6 @@ protected function executeBeforePlugins(AppConfigTransfer $appConfigTransfer): A return $this->executeConfigurationBeforeDeletePlugins($appConfigTransfer); } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ protected function executeAfterPlugins(AppConfigTransfer $appConfigTransfer): AppConfigTransfer { if ($appConfigTransfer->getIsActive() !== false) { @@ -127,11 +103,6 @@ protected function executeAfterPlugins(AppConfigTransfer $appConfigTransfer): Ap return $this->executeConfigurationAfterDeletePlugins($appConfigTransfer); } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ protected function executeConfigurationBeforeSavePlugins(AppConfigTransfer $appConfigTransfer): AppConfigTransfer { foreach ($this->configurationBeforeSavePlugins as $configurationBeforeSavePlugin) { @@ -141,11 +112,6 @@ protected function executeConfigurationBeforeSavePlugins(AppConfigTransfer $appC return $appConfigTransfer; } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ protected function executeConfigurationAfterSavePlugins(AppConfigTransfer $appConfigTransfer): AppConfigTransfer { foreach ($this->configurationAfterSavePlugins as $configurationAfterSavePlugin) { @@ -155,11 +121,6 @@ protected function executeConfigurationAfterSavePlugins(AppConfigTransfer $appCo return $appConfigTransfer; } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return void - */ protected function configurePropelEncryption(AppConfigTransfer $appConfigTransfer): void { try { @@ -168,26 +129,16 @@ protected function configurePropelEncryption(AppConfigTransfer $appConfigTransfe } } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigResponseTransfer - */ protected function getSuccessResponse(AppConfigTransfer $appConfigTransfer): AppConfigResponseTransfer { - $appResponseTransfer = new AppConfigResponseTransfer(); + $appConfigResponseTransfer = new AppConfigResponseTransfer(); - $appResponseTransfer->setIsSuccessful(true) + $appConfigResponseTransfer->setIsSuccessful(true) ->setAppConfig($appConfigTransfer); - return $appResponseTransfer; + return $appConfigResponseTransfer; } - /** - * @param string $errorMessage - * - * @return \Generated\Shared\Transfer\AppConfigResponseTransfer - */ protected function getFailResponse(string $errorMessage): AppConfigResponseTransfer { return (new AppConfigResponseTransfer()) @@ -195,11 +146,6 @@ protected function getFailResponse(string $errorMessage): AppConfigResponseTrans ->setErrorMessage($errorMessage); } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ protected function executeConfigurationBeforeDeletePlugins(AppConfigTransfer $appConfigTransfer): AppConfigTransfer { foreach ($this->configurationBeforeDeletePlugin as $configurationBeforeDeletePlugin) { @@ -209,11 +155,6 @@ protected function executeConfigurationBeforeDeletePlugins(AppConfigTransfer $ap return $appConfigTransfer; } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ protected function executeConfigurationAfterDeletePlugins(AppConfigTransfer $appConfigTransfer): AppConfigTransfer { foreach ($this->configurationAfterDeletePlugin as $configurationAfterDeletePlugin) { diff --git a/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriterInterface.php b/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriterInterface.php index 45fc9ec..79bf245 100644 --- a/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriterInterface.php +++ b/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriterInterface.php @@ -12,10 +12,5 @@ interface ConfigWriterInterface { - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigResponseTransfer - */ public function saveConfig(AppConfigTransfer $appConfigTransfer): AppConfigResponseTransfer; } diff --git a/src/Spryker/Zed/AppKernel/Dependency/Client/AppKernelToSecretsManagerClientBridge.php b/src/Spryker/Zed/AppKernel/Dependency/Client/AppKernelToSecretsManagerClientBridge.php index 16f890c..b078feb 100644 --- a/src/Spryker/Zed/AppKernel/Dependency/Client/AppKernelToSecretsManagerClientBridge.php +++ b/src/Spryker/Zed/AppKernel/Dependency/Client/AppKernelToSecretsManagerClientBridge.php @@ -8,14 +8,13 @@ namespace Spryker\Zed\AppKernel\Dependency\Client; use Generated\Shared\Transfer\SecretTransfer; -use Spryker\Client\SecretsManager\SecretsManagerClientInterface; class AppKernelToSecretsManagerClientBridge implements AppKernelToSecretsManagerClientInterface { /** * @var \Spryker\Client\SecretsManager\SecretsManagerClientInterface */ - protected SecretsManagerClientInterface $secretsManagerClient; + protected $secretsManagerClient; /** * @param \Spryker\Client\SecretsManager\SecretsManagerClientInterface $secretsManagerClient @@ -25,21 +24,11 @@ public function __construct($secretsManagerClient) $this->secretsManagerClient = $secretsManagerClient; } - /** - * @param \Generated\Shared\Transfer\SecretTransfer $secretTransfer - * - * @return \Generated\Shared\Transfer\SecretTransfer - */ public function getSecret(SecretTransfer $secretTransfer): SecretTransfer { return $this->secretsManagerClient->getSecret($secretTransfer); } - /** - * @param \Generated\Shared\Transfer\SecretTransfer $secretTransfer - * - * @return bool - */ public function createSecret(SecretTransfer $secretTransfer): bool { return $this->secretsManagerClient->createSecret($secretTransfer); diff --git a/src/Spryker/Zed/AppKernel/Dependency/Client/AppKernelToSecretsManagerClientInterface.php b/src/Spryker/Zed/AppKernel/Dependency/Client/AppKernelToSecretsManagerClientInterface.php index 9716c29..dec8478 100644 --- a/src/Spryker/Zed/AppKernel/Dependency/Client/AppKernelToSecretsManagerClientInterface.php +++ b/src/Spryker/Zed/AppKernel/Dependency/Client/AppKernelToSecretsManagerClientInterface.php @@ -11,17 +11,7 @@ interface AppKernelToSecretsManagerClientInterface { - /** - * @param \Generated\Shared\Transfer\SecretTransfer $secretTransfer - * - * @return \Generated\Shared\Transfer\SecretTransfer - */ public function getSecret(SecretTransfer $secretTransfer): SecretTransfer; - /** - * @param \Generated\Shared\Transfer\SecretTransfer $secretTransfer - * - * @return bool - */ public function createSecret(SecretTransfer $secretTransfer): bool; } diff --git a/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeBridge.php b/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeBridge.php index 8e23d62..49ab8e7 100644 --- a/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeBridge.php +++ b/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeBridge.php @@ -9,14 +9,13 @@ use Generated\Shared\Transfer\MessageResponseTransfer; use Spryker\Shared\Kernel\Transfer\TransferInterface; -use Spryker\Zed\MessageBroker\Business\MessageBrokerFacadeInterface; class AppKernelToMessageBrokerFacadeBridge implements AppKernelToMessageBrokerFacadeInterface { /** * @var \Spryker\Zed\MessageBroker\Business\MessageBrokerFacadeInterface */ - protected MessageBrokerFacadeInterface $messageBrokerFacade; + protected $messageBrokerFacade; /** * @param \Spryker\Zed\MessageBroker\Business\MessageBrokerFacadeInterface $messageBrokerFacade @@ -26,11 +25,6 @@ public function __construct($messageBrokerFacade) $this->messageBrokerFacade = $messageBrokerFacade; } - /** - * @param \Spryker\Shared\Kernel\Transfer\TransferInterface $messageTransfer - * - * @return \Generated\Shared\Transfer\MessageResponseTransfer - */ public function sendMessage(TransferInterface $messageTransfer): MessageResponseTransfer { return $this->messageBrokerFacade->sendMessage($messageTransfer); diff --git a/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeInterface.php b/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeInterface.php index 3a30db1..5e4c635 100644 --- a/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeInterface.php +++ b/src/Spryker/Zed/AppKernel/Dependency/Facade/AppKernelToMessageBrokerFacadeInterface.php @@ -12,10 +12,5 @@ interface AppKernelToMessageBrokerFacadeInterface { - /** - * @param \Spryker\Shared\Kernel\Transfer\TransferInterface $messageTransfer - * - * @return \Generated\Shared\Transfer\MessageResponseTransfer - */ public function sendMessage(TransferInterface $messageTransfer): MessageResponseTransfer; } diff --git a/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilEncodingServiceBridge.php b/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilEncodingServiceBridge.php index d0fa8f6..41a7a27 100644 --- a/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilEncodingServiceBridge.php +++ b/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilEncodingServiceBridge.php @@ -26,8 +26,6 @@ public function __construct($utilEncodingService) * @param array $value * @param int|null $options * @param int|null $depth - * - * @return string|null */ public function encodeJson($value, $options = null, $depth = null): ?string { diff --git a/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilEncodingServiceInterface.php b/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilEncodingServiceInterface.php index dd7daa1..a176964 100644 --- a/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilEncodingServiceInterface.php +++ b/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilEncodingServiceInterface.php @@ -13,8 +13,6 @@ interface AppKernelToUtilEncodingServiceInterface * @param array $value * @param int|null $options * @param int|null $depth - * - * @return string|null */ public function encodeJson($value, $options = null, $depth = null): ?string; diff --git a/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilTextServiceBridge.php b/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilTextServiceBridge.php index bae32bb..ace495f 100644 --- a/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilTextServiceBridge.php +++ b/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilTextServiceBridge.php @@ -24,8 +24,6 @@ public function __construct($utilTextService) /** * @param int $length - * - * @return string */ public function generateRandomString($length): string { diff --git a/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilTextServiceInterface.php b/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilTextServiceInterface.php index 4ba38d2..06ae850 100644 --- a/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilTextServiceInterface.php +++ b/src/Spryker/Zed/AppKernel/Dependency/Service/AppKernelToUtilTextServiceInterface.php @@ -11,8 +11,6 @@ interface AppKernelToUtilTextServiceInterface { /** * @param int $length - * - * @return string */ public function generateRandomString($length): string; } diff --git a/src/Spryker/Zed/AppKernel/Persistence/AppKernelEntityManager.php b/src/Spryker/Zed/AppKernel/Persistence/AppKernelEntityManager.php index 9c964d1..f44bfee 100644 --- a/src/Spryker/Zed/AppKernel/Persistence/AppKernelEntityManager.php +++ b/src/Spryker/Zed/AppKernel/Persistence/AppKernelEntityManager.php @@ -16,18 +16,13 @@ */ class AppKernelEntityManager extends AbstractEntityManager implements AppKernelEntityManagerInterface { - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ public function saveConfig(AppConfigTransfer $appConfigTransfer): AppConfigTransfer { $appConfigEntity = $this->getFactory() ->createAppConfigQuery() ->findOneByTenantIdentifier($appConfigTransfer->getTenantIdentifierOrFail()); - if (!$appConfigEntity) { + if ($appConfigEntity === null) { $appConfigEntity = new SpyAppConfig(); } diff --git a/src/Spryker/Zed/AppKernel/Persistence/AppKernelEntityManagerInterface.php b/src/Spryker/Zed/AppKernel/Persistence/AppKernelEntityManagerInterface.php index ec6236f..9a3bdf2 100644 --- a/src/Spryker/Zed/AppKernel/Persistence/AppKernelEntityManagerInterface.php +++ b/src/Spryker/Zed/AppKernel/Persistence/AppKernelEntityManagerInterface.php @@ -11,10 +11,5 @@ interface AppKernelEntityManagerInterface { - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * - * @return \Generated\Shared\Transfer\AppConfigTransfer - */ public function saveConfig(AppConfigTransfer $appConfigTransfer): AppConfigTransfer; } diff --git a/src/Spryker/Zed/AppKernel/Persistence/AppKernelPersistenceFactory.php b/src/Spryker/Zed/AppKernel/Persistence/AppKernelPersistenceFactory.php index fab3fa7..31d6670 100644 --- a/src/Spryker/Zed/AppKernel/Persistence/AppKernelPersistenceFactory.php +++ b/src/Spryker/Zed/AppKernel/Persistence/AppKernelPersistenceFactory.php @@ -20,9 +20,6 @@ */ class AppKernelPersistenceFactory extends AbstractPersistenceFactory { - /** - * @return \Spryker\Zed\AppKernel\Persistence\Propel\Mapper\AppConfigMapper - */ public function createAppConfigMapper(): AppConfigMapper { return new AppConfigMapper( @@ -30,17 +27,11 @@ public function createAppConfigMapper(): AppConfigMapper ); } - /** - * @return \Orm\Zed\AppKernel\Persistence\SpyAppConfigQuery - */ public function createAppConfigQuery(): SpyAppConfigQuery { return SpyAppConfigQuery::create(); } - /** - * @return \Spryker\Zed\AppKernel\Dependency\Service\AppKernelToUtilEncodingServiceInterface - */ public function getUtilEncodingService(): AppKernelToUtilEncodingServiceInterface { return $this->getProvidedDependency(AppKernelDependencyProvider::SERVICE_UTIL_ENCODING); diff --git a/src/Spryker/Zed/AppKernel/Persistence/AppKernelRepository.php b/src/Spryker/Zed/AppKernel/Persistence/AppKernelRepository.php index 62206c1..ada9be6 100644 --- a/src/Spryker/Zed/AppKernel/Persistence/AppKernelRepository.php +++ b/src/Spryker/Zed/AppKernel/Persistence/AppKernelRepository.php @@ -21,12 +21,7 @@ class AppKernelRepository extends AbstractRepository implements AppKernelReposit use LoggerTrait; /** - * @param \Generated\Shared\Transfer\AppConfigCriteriaTransfer $appConfigCriteriaTransfer - * @param \Spryker\Shared\Kernel\Transfer\TransferInterface $transfer - * * @throws \Spryker\Zed\AppKernel\Persistence\Exception\AppConfigNotFoundException - * - * @return \Spryker\Shared\Kernel\Transfer\TransferInterface */ public function findAppConfigByCriteria( AppConfigCriteriaTransfer $appConfigCriteriaTransfer, @@ -36,7 +31,7 @@ public function findAppConfigByCriteria( ->createAppConfigQuery() ->findOneByTenantIdentifier($appConfigCriteriaTransfer->getTenantIdentifierOrFail()); - if (!$appConfigEntity) { + if ($appConfigEntity === null) { $errorMessage = 'Could not find an App configuration for the given Tenant'; $this->getLogger()->error($errorMessage, [ diff --git a/src/Spryker/Zed/AppKernel/Persistence/AppKernelRepositoryInterface.php b/src/Spryker/Zed/AppKernel/Persistence/AppKernelRepositoryInterface.php index f4891b1..f9743d7 100644 --- a/src/Spryker/Zed/AppKernel/Persistence/AppKernelRepositoryInterface.php +++ b/src/Spryker/Zed/AppKernel/Persistence/AppKernelRepositoryInterface.php @@ -12,12 +12,6 @@ interface AppKernelRepositoryInterface { - /** - * @param \Generated\Shared\Transfer\AppConfigCriteriaTransfer $appConfigCriteriaTransfer - * @param \Spryker\Shared\Kernel\Transfer\TransferInterface $transfer - * - * @return \Spryker\Shared\Kernel\Transfer\TransferInterface - */ public function findAppConfigByCriteria( AppConfigCriteriaTransfer $appConfigCriteriaTransfer, TransferInterface $transfer diff --git a/src/Spryker/Zed/AppKernel/Persistence/Propel/Mapper/AppConfigMapper.php b/src/Spryker/Zed/AppKernel/Persistence/Propel/Mapper/AppConfigMapper.php index 0e6dd72..3966ffe 100644 --- a/src/Spryker/Zed/AppKernel/Persistence/Propel/Mapper/AppConfigMapper.php +++ b/src/Spryker/Zed/AppKernel/Persistence/Propel/Mapper/AppConfigMapper.php @@ -14,49 +14,34 @@ class AppConfigMapper { - /** - * @param \Spryker\Zed\AppKernel\Dependency\Service\AppKernelToUtilEncodingServiceInterface $utilEncodingService - */ - public function __construct(protected AppKernelToUtilEncodingServiceInterface $utilEncodingService) + public function __construct(protected AppKernelToUtilEncodingServiceInterface $appKernelToUtilEncodingService) { } - /** - * @param \Generated\Shared\Transfer\AppConfigTransfer $appConfigTransfer - * @param \Orm\Zed\AppKernel\Persistence\SpyAppConfig $appConfigEntity - * - * @return \Orm\Zed\AppKernel\Persistence\SpyAppConfig - */ public function mapAppConfigTransferToAppConfigEntity( AppConfigTransfer $appConfigTransfer, - SpyAppConfig $appConfigEntity + SpyAppConfig $spyAppConfig ): SpyAppConfig { $appConfigArray = $appConfigTransfer->modifiedToArray(); - $appConfigArray[AppConfigTransfer::CONFIG] = $this->utilEncodingService->encodeJson($appConfigTransfer->getConfig()); + $appConfigArray[AppConfigTransfer::CONFIG] = $this->appKernelToUtilEncodingService->encodeJson($appConfigTransfer->getConfig()); - $appConfigEntity->fromArray($appConfigArray); + $spyAppConfig->fromArray($appConfigArray); - return $appConfigEntity; + return $spyAppConfig; } - /** - * @param \Orm\Zed\AppKernel\Persistence\SpyAppConfig $appConfigEntity - * @param \Spryker\Shared\Kernel\Transfer\TransferInterface $transfer - * - * @return \Spryker\Shared\Kernel\Transfer\TransferInterface - */ public function mapAppConfigEntityToAppConfigTransfer( - SpyAppConfig $appConfigEntity, + SpyAppConfig $spyAppConfig, TransferInterface $transfer ): TransferInterface { - $decodedAppConfig = (array)$this->utilEncodingService->decodeJson($appConfigEntity->getConfig(), true); + $decodedAppConfig = (array)$this->appKernelToUtilEncodingService->decodeJson($spyAppConfig->getConfig(), true); $transfer->fromArray( - (array)$this->utilEncodingService->decodeJson($appConfigEntity->getConfig(), true), + (array)$this->appKernelToUtilEncodingService->decodeJson($spyAppConfig->getConfig(), true), true, ); if ($transfer instanceof AppConfigTransfer) { - $transfer->fromArray($appConfigEntity->toArray(), true); + $transfer->fromArray($spyAppConfig->toArray(), true); $transfer->setConfig($decodedAppConfig); } From ccb9cf08b01ab88be2c28c2e666cf65c6c3fc471 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Klatt?= Date: Mon, 24 Jun 2024 12:30:26 +0200 Subject: [PATCH 12/17] ACp-3340 Updated composer.lock. --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index ec21b3e..8c767cc 100644 --- a/composer.json +++ b/composer.json @@ -27,7 +27,7 @@ "spryker/code-sniffer": "*", "spryker/container": "*", "spryker/development": "^3.34.0", - "spryker/message-broker-aws": "^1.7", + "spryker/message-broker-aws": "^1.7.0", "spryker/propel": "*", "spryker/testify": "*", "spryker/testify-async-api": "^0.1.4" From 03747d46b40b84b81e2f7e09a0f98ba9ea98250c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Klatt?= Date: Mon, 24 Jun 2024 12:32:27 +0200 Subject: [PATCH 13/17] ACP-3340 Updated CI config --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4f143a6..ac18c79 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -73,7 +73,7 @@ jobs: run: composer stan - name: Run Rector checks - run: composer rector-diff + run: composer rector-ci - name: Run CodeStyle checks run: composer cs-check From 8aacd75ea23244f94da12ac7b29355328ae3e564 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Klatt?= Date: Mon, 24 Jun 2024 14:21:04 +0200 Subject: [PATCH 14/17] ACP-3340 Removed unused Messages. --- resources/api/asyncapi.yml | 41 -------------------------------------- 1 file changed, 41 deletions(-) diff --git a/resources/api/asyncapi.yml b/resources/api/asyncapi.yml index 991bdb4..ea70c6a 100644 --- a/resources/api/asyncapi.yml +++ b/resources/api/asyncapi.yml @@ -10,27 +10,6 @@ channels: - $ref: '#/components/messages/AppConfigUpdated' components: messages: - ConfigureApp: - x-spryker: - module: AppConfig - name: ConfigureApp - title: Configure App Command - summary: This message is sent when the PBC is connected to a client application or the PBC configuration has been updated. This message contains the PBC Glue API URL and credentials that can be used in the client application to submit requests. - headers: - $ref: '#/components/schemas/message-broker/components/schemas/headers' - payload: - $ref: '#/components/schemas/AppConfiguration' - - DeleteApp: - x-spryker: - module: AppConfig - name: DeleteApp - title: Delete App Command - summary: This message is sent when the PBC disconnects from the client application. - headers: - $ref: '#/components/schemas/message-broker/components/schemas/headers' - payload: - $ref: '#/components/schemas/AppDisconnect' AppConfigUpdated: x-spryker: module: AppConfig @@ -42,26 +21,6 @@ components: headers: $ref: '#/components/schemas/message-broker/components/schemas/headers' schemas: - AppConfiguration: - type: object - properties: - apiUrl: - type: string - description: The URI of the PBC endpoint. - appIdentifier: - type: string - description: The app identifier to identify the PBC. - required: - - apiUrl - - appIdentifier - AppDisconnect: - type: object - properties: - appIdentifier: - type: string - description: The app identifier to identify the PBC. - required: - - appIdentifier AppConfigUpdated: type: object properties: From 16b4978d3e56fa6f6fac1311e31e2d9cda684a33 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Klatt?= Date: Mon, 24 Jun 2024 15:28:24 +0200 Subject: [PATCH 15/17] ACP-3340 Fixes after CR. --- .../Controller/AppConfigController.php | 2 +- .../Controller/AppDisconnectController.php | 8 ++++---- .../RouteProvider/AppRouteProviderPlugin.php | 20 +++++++++---------- .../Business/Writer/ConfigWriter.php | 2 +- 4 files changed, 16 insertions(+), 16 deletions(-) diff --git a/src/Spryker/Glue/AppKernel/Controller/AppConfigController.php b/src/Spryker/Glue/AppKernel/Controller/AppConfigController.php index 66ecf63..8ebba12 100644 --- a/src/Spryker/Glue/AppKernel/Controller/AppConfigController.php +++ b/src/Spryker/Glue/AppKernel/Controller/AppConfigController.php @@ -54,7 +54,7 @@ protected function updateStatus(AppConfigTransfer $appConfigTransfer): AppConfig if ($appConfigTransfer->getStatus() === null) { try { $existingAppConfigTransfer = $this->getFactory()->getAppKernelFacade() - ->getConfig((new AppConfigCriteriaTransfer())->setTenantIdentifier($appConfigTransfer->getTenantIdentifier())); + ->getConfig((new AppConfigCriteriaTransfer())->setTenantIdentifier($appConfigTransfer->getTenantIdentifier())); $appConfigTransfer->setStatus($existingAppConfigTransfer->getStatus()); $appConfigTransfer->setIsActive($existingAppConfigTransfer->getIsActive()); diff --git a/src/Spryker/Glue/AppKernel/Controller/AppDisconnectController.php b/src/Spryker/Glue/AppKernel/Controller/AppDisconnectController.php index c9ba9a6..c2f5c93 100644 --- a/src/Spryker/Glue/AppKernel/Controller/AppDisconnectController.php +++ b/src/Spryker/Glue/AppKernel/Controller/AppDisconnectController.php @@ -47,14 +47,14 @@ public function postDisconnectAction(GlueRequestTransfer $glueRequestTransfer): ->saveConfig($appConfigTransfer); } catch (AppConfigNotFoundException $appConfigNotFoundException) { return $this->getFactory() - ->createResponseBuilder() - ->buildErrorResponse($appConfigNotFoundException->getMessage()); + ->createResponseBuilder() + ->buildErrorResponse($appConfigNotFoundException->getMessage()); } if (!$appConfigResponseTransfer->getIsSuccessful()) { return $this->getFactory() - ->createResponseBuilder() - ->buildErrorResponse(AppKernelConfig::RESPONSE_MESSAGE_DISCONNECT_ERROR); + ->createResponseBuilder() + ->buildErrorResponse(AppKernelConfig::RESPONSE_MESSAGE_DISCONNECT_ERROR); } return $this->getFactory()->createResponseBuilder()->buildSuccessfulResponse(); diff --git a/src/Spryker/Glue/AppKernel/Plugin/RouteProvider/AppRouteProviderPlugin.php b/src/Spryker/Glue/AppKernel/Plugin/RouteProvider/AppRouteProviderPlugin.php index cbfa3ff..509a674 100644 --- a/src/Spryker/Glue/AppKernel/Plugin/RouteProvider/AppRouteProviderPlugin.php +++ b/src/Spryker/Glue/AppKernel/Plugin/RouteProvider/AppRouteProviderPlugin.php @@ -29,20 +29,20 @@ public function addRoutes(RouteCollection $routeCollection): RouteCollection protected function getPostConfigureRoute(): Route { return (new Route(AppKernelConfig::CONFIGURE_ROUTE_PATH)) - ->setDefaults([ - '_controller' => [AppConfigController::class, 'postConfigureAction'], - '_resourceName' => 'App', - ]) - ->setMethods(Request::METHOD_POST); + ->setDefaults([ + '_controller' => [AppConfigController::class, 'postConfigureAction'], + '_resourceName' => 'App', + ]) + ->setMethods(Request::METHOD_POST); } protected function getPostDisconnectRoute(): Route { return (new Route(AppKernelConfig::DISCONNECT_ROUTE_PATH)) - ->setDefaults([ - '_controller' => [AppDisconnectController::class, 'postDisconnectAction'], - '_resourceName' => 'App', - ]) - ->setMethods(Request::METHOD_POST); + ->setDefaults([ + '_controller' => [AppDisconnectController::class, 'postDisconnectAction'], + '_resourceName' => 'App', + ]) + ->setMethods(Request::METHOD_POST); } } diff --git a/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriter.php b/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriter.php index 7043283..1d38e37 100644 --- a/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriter.php +++ b/src/Spryker/Zed/AppKernel/Business/Writer/ConfigWriter.php @@ -50,7 +50,7 @@ public function __construct( public function saveConfig(AppConfigTransfer $appConfigTransfer): AppConfigResponseTransfer { try { - $appConfigTransfer = $this->getTransactionHandler()->handleTransaction(function () use ($appConfigTransfer): \Generated\Shared\Transfer\AppConfigTransfer { + $appConfigTransfer = $this->getTransactionHandler()->handleTransaction(function () use ($appConfigTransfer): AppConfigTransfer { return $this->doSaveAppConfig($appConfigTransfer); }); From d5fb275dc5ec4662ec5d3bc1b2714e39f9671926 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Klatt?= Date: Mon, 24 Jun 2024 15:40:19 +0200 Subject: [PATCH 16/17] ACP-3340 Updated phpcs.yml --- .../propel/generated-conf/loadDatabase.php | 23 ------------------- phpcs.xml | 14 +++++------ 2 files changed, 7 insertions(+), 30 deletions(-) delete mode 100644 data/cache/propel/generated-conf/loadDatabase.php diff --git a/data/cache/propel/generated-conf/loadDatabase.php b/data/cache/propel/generated-conf/loadDatabase.php deleted file mode 100644 index 1381b51..0000000 --- a/data/cache/propel/generated-conf/loadDatabase.php +++ /dev/null @@ -1,23 +0,0 @@ -initDatabaseMapFromDumps(array ( - 'zed' => - array ( - 'tablesByName' => - array ( - 'spy_app_config' => '\\Orm\\Zed\\AppKernel\\Persistence\\Map\\SpyAppConfigTableMap', - 'spy_locale' => '\\Orm\\Zed\\Locale\\Persistence\\Map\\SpyLocaleTableMap', - 'spy_locale_store' => '\\Orm\\Zed\\Locale\\Persistence\\Map\\SpyLocaleStoreTableMap', - 'spy_queue_process' => '\\Orm\\Zed\\Queue\\Persistence\\Map\\SpyQueueProcessTableMap', - 'spy_store' => '\\Orm\\Zed\\Store\\Persistence\\Map\\SpyStoreTableMap', - ), - 'tablesByPhpName' => - array ( - '\\SpyAppConfig' => '\\Orm\\Zed\\AppKernel\\Persistence\\Map\\SpyAppConfigTableMap', - '\\SpyLocale' => '\\Orm\\Zed\\Locale\\Persistence\\Map\\SpyLocaleTableMap', - '\\SpyLocaleStore' => '\\Orm\\Zed\\Locale\\Persistence\\Map\\SpyLocaleStoreTableMap', - '\\SpyQueueProcess' => '\\Orm\\Zed\\Queue\\Persistence\\Map\\SpyQueueProcessTableMap', - '\\SpyStore' => '\\Orm\\Zed\\Store\\Persistence\\Map\\SpyStoreTableMap', - ), - ), -)); diff --git a/phpcs.xml b/phpcs.xml index 014aa0a..f298c73 100644 --- a/phpcs.xml +++ b/phpcs.xml @@ -13,13 +13,13 @@ config/ tests/ - */src/Generated/* - */src/Orm/*/Base/ - */src/Orm/*/Map/ - */src/Orm/Propel/ - */tests/_support/_generated/* - */tests/_helpers/* - */tests/_output/* + src/Generated/* + src/Orm/*/Base/ + src/Orm/*/Map/ + src/Orm/Propel/ + tests/_support/_generated/* + tests/_helpers/* + tests/_output/* From 645c145be1b24b62af15cbb6258f36398b309047 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Klatt?= Date: Mon, 24 Jun 2024 15:43:24 +0200 Subject: [PATCH 17/17] ACP-3340 Updated phpcs.xml --- phpcs.xml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/phpcs.xml b/phpcs.xml index f298c73..fc33293 100644 --- a/phpcs.xml +++ b/phpcs.xml @@ -14,9 +14,7 @@ tests/ src/Generated/* - src/Orm/*/Base/ - src/Orm/*/Map/ - src/Orm/Propel/ + src/Orm/* tests/_support/_generated/* tests/_helpers/* tests/_output/*