Magento 2 Documentation  2.3
Documentation for Magento 2 CMS v2.3 (December 2018)
Recurring.php
Go to the documentation of this file.
1 <?php
7 
11 use Magento\Framework\MessageQueue\ConfigInterface as MessageQueueConfig;
12 
17 {
21  private $messageQueueConfig;
22 
26  public function __construct(MessageQueueConfig $messageQueueConfig)
27  {
28  $this->messageQueueConfig = $messageQueueConfig;
29  }
30 
35  {
36  $setup->startSetup();
37 
38  $binds = $this->messageQueueConfig->getBinds();
39  $queues = [];
40  foreach ($binds as $bind) {
41  $queues[] = $bind[MessageQueueConfig::BIND_QUEUE];
42  }
43  $connection = $setup->getConnection();
44  $existingQueues = $connection->fetchCol($connection->select()->from($setup->getTable('queue'), 'name'));
45  $queues = array_unique(array_diff($queues, $existingQueues));
47  if (!empty($queues)) {
48  $connection->insertArray($setup->getTable('queue'), ['name'], $queues);
49  }
50 
51  $setup->endSetup();
52  }
53 }
__construct(MessageQueueConfig $messageQueueConfig)
Definition: Recurring.php:26
$setup
Definition: trigger.php:12
install(SchemaSetupInterface $setup, ModuleContextInterface $context)
Definition: Recurring.php:34
$queues
Definition: queues.php:8
$connection
Definition: bulk.php:13