Skip to content

Commit 1cbb5bc

Browse files
author
Stanislav Idolov
authored
ENGCOM-2379: Remove direct use of object manager #16851
2 parents 1d5bb27 + 1ffae7f commit 1cbb5bc

File tree

2 files changed

+53
-8
lines changed

2 files changed

+53
-8
lines changed

app/code/Magento/Newsletter/Controller/Adminhtml/Subscriber/MassDelete.php

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,32 @@
66
*/
77
namespace Magento\Newsletter\Controller\Adminhtml\Subscriber;
88

9-
class MassDelete extends \Magento\Newsletter\Controller\Adminhtml\Subscriber
9+
use Magento\Newsletter\Controller\Adminhtml\Subscriber;
10+
use Magento\Backend\App\Action\Context;
11+
use Magento\Framework\App\Response\Http\FileFactory;
12+
use Magento\Newsletter\Model\SubscriberFactory;
13+
use Magento\Framework\App\ObjectManager;
14+
15+
class MassDelete extends Subscriber
1016
{
17+
/**
18+
* @var SubscriberFactory
19+
*/
20+
private $subscriberFactory;
21+
22+
/**
23+
* @param Context $context
24+
* @param FileFactory $fileFactory
25+
*/
26+
public function __construct(
27+
Context $context,
28+
FileFactory $fileFactory,
29+
SubscriberFactory $subscriberFactory = null
30+
) {
31+
$this->subscriberFactory = $subscriberFactory ?: ObjectManager::getInstance()->get(SubscriberFactory::class);
32+
parent::__construct($context, $fileFactory);
33+
}
34+
1135
/**
1236
* Delete one or more subscribers action
1337
*
@@ -21,9 +45,7 @@ public function execute()
2145
} else {
2246
try {
2347
foreach ($subscribersIds as $subscriberId) {
24-
$subscriber = $this->_objectManager->create(
25-
\Magento\Newsletter\Model\Subscriber::class
26-
)->load(
48+
$subscriber = $this->subscriberFactory->create()->load(
2749
$subscriberId
2850
);
2951
$subscriber->delete();

app/code/Magento/Newsletter/Controller/Adminhtml/Subscriber/MassUnsubscribe.php

Lines changed: 27 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,33 @@
66
*/
77
namespace Magento\Newsletter\Controller\Adminhtml\Subscriber;
88

9-
class MassUnsubscribe extends \Magento\Newsletter\Controller\Adminhtml\Subscriber
9+
use Magento\Newsletter\Controller\Adminhtml\Subscriber;
10+
use Magento\Backend\App\Action\Context;
11+
use Magento\Framework\App\Response\Http\FileFactory;
12+
use Magento\Newsletter\Model\SubscriberFactory;
13+
use Magento\Framework\App\ObjectManager;
14+
15+
class MassUnsubscribe extends Subscriber
1016
{
17+
/**
18+
* @var SubscriberFactory
19+
*/
20+
private $subscriberFactory;
21+
22+
/**
23+
* @param Context $context
24+
* @param FileFactory $fileFactory
25+
* @param SubscriberFactory $subscriberFactory
26+
*/
27+
public function __construct(
28+
Context $context,
29+
FileFactory $fileFactory,
30+
SubscriberFactory $subscriberFactory = null
31+
) {
32+
$this->subscriberFactory = $subscriberFactory ?: ObjectManager::getInstance()->get(SubscriberFactory::class);
33+
parent::__construct($context, $fileFactory);
34+
}
35+
1136
/**
1237
* Unsubscribe one or more subscribers action
1338
*
@@ -21,9 +46,7 @@ public function execute()
2146
} else {
2247
try {
2348
foreach ($subscribersIds as $subscriberId) {
24-
$subscriber = $this->_objectManager->create(
25-
\Magento\Newsletter\Model\Subscriber::class
26-
)->load(
49+
$subscriber = $this->subscriberFactory->create()->load(
2750
$subscriberId
2851
);
2952
$subscriber->unsubscribe();

0 commit comments

Comments
 (0)