![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-admin-adobe-ims/Plugin/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\AdminAdobeIms\Plugin; use Exception; use Magento\AdminAdobeIms\Model\FlushUserTokens; use Magento\AdminAdobeIms\Service\ImsConfig; use Magento\Framework\Exception\LocalizedException; use Magento\Integration\Model\AdminTokenService; class RevokeAdminAccessTokenPlugin { /** * @var ImsConfig */ private ImsConfig $adminImsConfig; /** * @var FlushUserTokens */ private FlushUserTokens $flushUserTokens; /** * @param ImsConfig $adminImsConfig * @param FlushUserTokens $flushUserTokens */ public function __construct( ImsConfig $adminImsConfig, FlushUserTokens $flushUserTokens ) { $this->adminImsConfig = $adminImsConfig; $this->flushUserTokens = $flushUserTokens; } /** * Get access token(s) by admin id and logout user from Adobe IMS * * @param AdminTokenService $subject * @param bool $result * @param int $adminId * @return bool * @throws LocalizedException * @SuppressWarnings(PHPMD.UnusedFormalParameter) */ public function afterRevokeAdminAccessToken( AdminTokenService $subject, bool $result, int $adminId ): bool { if ($this->adminImsConfig->enabled() !== true) { return $result; } try { $this->flushUserTokens->execute($adminId); } catch (Exception $exception) { throw new LocalizedException(__('The tokens couldn\'t be revoked.'), $exception); } return $result; } }