Skip to content

Commit 69badcd

Browse files
split logic, revert BIC
1 parent 1d7dea8 commit 69badcd

File tree

17 files changed

+423
-306
lines changed

17 files changed

+423
-306
lines changed

app/code/Magento/AsynchronousOperations/Controller/Adminhtml/Bulk/Details.php

Lines changed: 24 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,14 @@
55
*/
66
namespace Magento\AsynchronousOperations\Controller\Adminhtml\Bulk;
77

8-
use Magento\AsynchronousOperations\Model\AccessManager;
9-
use Magento\Framework\View\Result\PageFactory;
10-
use Magento\Backend\App\Action\Context;
8+
use Magento\AsynchronousOperations\Model\AccessValidator;
9+
use Magento\AsynchronousOperations\Model\IsAllowedForBulkUuid;
1110
use Magento\Backend\App\Action;
11+
use Magento\Backend\App\Action\Context;
1212
use Magento\Framework\App\Action\HttpGetActionInterface;
13+
use Magento\Framework\App\ObjectManager;
14+
use Magento\Framework\View\Result\Page;
15+
use Magento\Framework\View\Result\PageFactory;
1316

1417
/**
1518
* Class View Operation Details Controller
@@ -22,32 +25,40 @@ class Details extends Action implements HttpGetActionInterface
2225
private $resultPageFactory;
2326

2427
/**
25-
* @var AccessManager
28+
* @var AccessValidator
29+
* @deprecated
2630
*/
27-
private $accessManager;
31+
private $accessValidator;
2832

2933
/**
3034
* @var string
3135
*/
3236
private $menuId;
3337

3438
/**
35-
* Details constructor.
36-
*
39+
* @var IsAllowedForBulkUuid
40+
*/
41+
private $isAllowedForBulkUuid;
42+
43+
/**
3744
* @param Context $context
3845
* @param PageFactory $resultPageFactory
39-
* @param AccessManager $accessManager
46+
* @param AccessValidator $accessValidator
4047
* @param string $menuId
48+
* @param IsAllowedForBulkUuid|null $isAllowedForBulkUuid
4149
*/
4250
public function __construct(
4351
Context $context,
4452
PageFactory $resultPageFactory,
45-
AccessManager $accessManager,
46-
$menuId = 'Magento_AsynchronousOperations::system_magento_logging_bulk_operations'
53+
AccessValidator $accessValidator,
54+
$menuId = 'Magento_AsynchronousOperations::system_magento_logging_bulk_operations',
55+
?IsAllowedForBulkUuid $isAllowedForBulkUuid = null
4756
) {
4857
$this->resultPageFactory = $resultPageFactory;
49-
$this->accessManager = $accessManager;
58+
$this->accessValidator = $accessValidator;
5059
$this->menuId = $menuId;
60+
$this->isAllowedForBulkUuid = $isAllowedForBulkUuid
61+
?: ObjectManager::getInstance()->get(IsAllowedForBulkUuid::class);
5162
parent::__construct($context);
5263
}
5364

@@ -56,13 +67,13 @@ public function __construct(
5667
*/
5768
protected function _isAllowed()
5869
{
59-
return $this->accessManager->isAllowedForBulkUuid($this->getRequest()->getParam('uuid'));
70+
return $this->isAllowedForBulkUuid->execute($this->getRequest()->getParam('uuid'));
6071
}
6172

6273
/**
6374
* Bulk details action
6475
*
65-
* @return \Magento\Framework\View\Result\Page
76+
* @return Page
6677
*/
6778
public function execute()
6879
{

app/code/Magento/AsynchronousOperations/Controller/Adminhtml/Bulk/Retry.php

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,15 @@
77

88
use Magento\AsynchronousOperations\Model\BulkManagement;
99
use Magento\AsynchronousOperations\Model\BulkNotificationManagement;
10+
use Magento\AsynchronousOperations\Model\IsAllowedForBulkUuid;
1011
use Magento\Backend\App\Action\Context;
1112
use Magento\Backend\Model\View\Result\Redirect;
1213
use Magento\Backend\App\Action;
13-
use Magento\AsynchronousOperations\Model\AccessManager;
14-
use Magento\Framework\Controller\ResultFactory;
14+
use Magento\AsynchronousOperations\Model\AccessValidator;
1515
use Magento\Framework\App\Action\HttpPostActionInterface;
16+
use Magento\Framework\App\ObjectManager;
17+
use Magento\Framework\Bulk\GetBulksByUserAndTypeInterface;
18+
use Magento\Framework\Controller\ResultFactory;
1619

1720
/**
1821
* Class Bulk Retry Controller
@@ -30,36 +33,43 @@ class Retry extends Action implements HttpPostActionInterface
3033
private $notificationManagement;
3134

3235
/**
33-
* @var AccessManager
36+
* @var AccessValidator
37+
*/
38+
private $accessValidator;
39+
40+
/**
41+
* @var IsAllowedForBulkUuid
3442
*/
35-
private $accessManager;
43+
private $isAllowedForBulkUuid;
3644

3745
/**
38-
* Retry constructor.
39-
*
4046
* @param Context $context
4147
* @param BulkManagement $bulkManagement
4248
* @param BulkNotificationManagement $notificationManagement
43-
* @param AccessManager $accessManager
49+
* @param AccessValidator $accessValidator
50+
* @param IsAllowedForBulkUuid|null $isAllowedForBulkUuid
4451
*/
4552
public function __construct(
4653
Context $context,
4754
BulkManagement $bulkManagement,
4855
BulkNotificationManagement $notificationManagement,
49-
AccessManager $accessManager
56+
AccessValidator $accessValidator,
57+
?IsAllowedForBulkUuid $isAllowedForBulkUuid = null
5058
) {
5159
parent::__construct($context);
5260
$this->bulkManagement = $bulkManagement;
5361
$this->notificationManagement = $notificationManagement;
54-
$this->accessManager = $accessManager;
62+
$this->accessValidator = $accessValidator;
63+
$this->isAllowedForBulkUuid = $isAllowedForBulkUuid
64+
?: ObjectManager::getInstance()->get(IsAllowedForBulkUuid::class);
5565
}
5666

5767
/**
5868
* @inheritDoc
5969
*/
6070
protected function _isAllowed()
6171
{
62-
return $this->accessManager->isAllowedForBulkUuid($this->getRequest()->getParam('uuid'));
72+
return $this->isAllowedForBulkUuid->execute($this->getRequest()->getParam('uuid'));
6373
}
6474

6575
/**

app/code/Magento/AsynchronousOperations/Controller/Adminhtml/Index/Index.php

Lines changed: 10 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -6,51 +6,41 @@
66

77
namespace Magento\AsynchronousOperations\Controller\Adminhtml\Index;
88

9+
use Magento\Backend\App\Action;
910
use Magento\Backend\App\Action\Context;
10-
use Magento\Framework\View\Result\PageFactory;
1111
use Magento\Framework\View\Result\Page;
12-
use Magento\AsynchronousOperations\Model\AccessManager;
13-
use Magento\Backend\App\Action;
14-
use Magento\Framework\App\Action\HttpGetActionInterface;
12+
use \Magento\Framework\App\Action\HttpGetActionInterface;
13+
use Magento\Framework\View\Result\PageFactory;
1514

1615
class Index extends Action implements HttpGetActionInterface
1716
{
18-
public const BULK_OPERATIONS_MENU_ID = "Magento_AsynchronousOperations::system_magento_logging_bulk_operations";
17+
public const ADMIN_RESOURCE = 'Magento_AsynchronousOperations::system_magento_logging_bulk_operations';
1918

2019
/**
2120
* @var PageFactory
2221
*/
2322
private $resultPageFactory;
2423

2524
/**
26-
* @var AccessManager
25+
* @var string
2726
*/
28-
private $accessManager;
27+
private $menuId;
2928

3029
/**
31-
* Details constructor.
3230
* @param Context $context
3331
* @param PageFactory $resultPageFactory
34-
* @param AccessManager $accessManager
32+
* @param string $menuId
3533
*/
3634
public function __construct(
3735
Context $context,
3836
PageFactory $resultPageFactory,
39-
AccessManager $accessManager
37+
$menuId = 'Magento_AsynchronousOperations::system_magento_logging_bulk_operations'
4038
) {
4139
$this->resultPageFactory = $resultPageFactory;
42-
$this->accessManager = $accessManager;
40+
$this->menuId = $menuId;
4341
parent::__construct($context);
4442
}
4543

46-
/**
47-
* @inheritDoc
48-
*/
49-
protected function _isAllowed()
50-
{
51-
return $this->accessManager->isOwnActionsAllowed();
52-
}
53-
5444
/**
5545
* Bulk list action
5646
*
@@ -60,7 +50,7 @@ public function execute()
6050
{
6151
$resultPage = $this->resultPageFactory->create();
6252
$resultPage->initLayout();
63-
$this->_setActiveMenu(self::BULK_OPERATIONS_MENU_ID);
53+
$this->_setActiveMenu($this->menuId);
6454
$resultPage->getConfig()->getTitle()->prepend(__('Bulk Actions Log'));
6555
return $resultPage;
6656
}

app/code/Magento/AsynchronousOperations/Controller/Adminhtml/Notification/Dismiss.php

Lines changed: 8 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -6,50 +6,32 @@
66
namespace Magento\AsynchronousOperations\Controller\Adminhtml\Notification;
77

88
use Magento\AsynchronousOperations\Model\BulkNotificationManagement;
9-
use Magento\Backend\App\Action\Context;
109
use Magento\Backend\App\Action;
11-
use Magento\Framework\Controller\ResultFactory;
12-
use Magento\AsynchronousOperations\Model\AccessManager;
10+
use Magento\Backend\App\Action\Context;
1311
use Magento\Framework\App\Action\HttpGetActionInterface;
12+
use Magento\Framework\Controller\Result\Json;
13+
use Magento\Framework\Controller\ResultFactory;
1414

1515
/**
1616
* Class Bulk Notification Dismiss Controller
1717
*/
1818
class Dismiss extends Action implements HttpGetActionInterface
1919
{
20+
public const ADMIN_RESOURCE = 'Magento_AsynchronousOperations::system_magento_logging_bulk_operations';
21+
2022
/**
2123
* @var BulkNotificationManagement
2224
*/
2325
private $notificationManagement;
2426

2527
/**
26-
* @var AccessManager
27-
*/
28-
private $accessManager;
29-
30-
/**
31-
* Class constructor.
32-
*
3328
* @param Context $context
3429
* @param BulkNotificationManagement $notificationManagement
35-
* @param AccessManager $accessManager
3630
*/
37-
public function __construct(
38-
Context $context,
39-
BulkNotificationManagement $notificationManagement,
40-
AccessManager $accessManager
41-
) {
31+
public function __construct(Context $context, BulkNotificationManagement $notificationManagement)
32+
{
4233
parent::__construct($context);
4334
$this->notificationManagement = $notificationManagement;
44-
$this->accessManager = $accessManager;
45-
}
46-
47-
/**
48-
* @inheritDoc
49-
*/
50-
protected function _isAllowed()
51-
{
52-
return $this->accessManager->isOwnActionsAllowed();
5335
}
5436

5537
/**
@@ -64,7 +46,7 @@ public function execute()
6446

6547
$isAcknowledged = $this->notificationManagement->acknowledgeBulks($bulkUuids);
6648

67-
/** @var \Magento\Framework\Controller\Result\Json $result */
49+
/** @var Json $result */
6850
$result = $this->resultFactory->create(ResultFactory::TYPE_JSON);
6951
if (!$isAcknowledged) {
7052
$result->setHttpResponseCode(400);

0 commit comments

Comments
 (0)