/
githubmirror
/
magento2
Обзор
Документация
Войти
/
githubmirror
/
magento2
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
2.4-develop
lib/internal/Magento/Framework/Stomp/Exchange.php
45 строк
1 KB
Dmytro Horytskyi
ACP2E-4349: [B2B] Purchase orders not auto-converting to sales order with ActiveMQ
13 май 2026, 09:27
13 май 2026, 09:27
2e4a4eb
Код
Авторство
О чём код?
<?php /** * Copyright 2026 Adobe * All Rights Reserved. */ declare(strict_types=1); namespace Magento\Framework\Stomp; use Magento\Framework\MessageQueue\EnvelopeInterface; use Magento\Framework\MessageQueue\ExchangeInterface; use Magento\Framework\MessageQueue\MessageDeliveryMode; use Magento\Framework\MessageQueue\QueueResolver; use Stomp\Transport\Message; class Exchange implements ExchangeInterface { /** * @param StompClientInterface $stompClient * @param QueueResolver $queueResolver */ public function __construct( private readonly StompClientInterface $stompClient, private readonly QueueResolver $queueResolver, ) { } /** * @inheritdoc */ public function enqueue($topic, EnvelopeInterface $envelope) { $headers = $envelope->getProperties(); $deliveryMode = $headers['delivery_mode'] ?? null; if (MessageDeliveryMode::PERSISTENT->value === $deliveryMode) { $headers['persistent'] = 'true'; } $headers['destination-type'] = 'ANYCAST'; $message = new Message($envelope->getBody(), $headers); $queue = $this->queueResolver->getByTopic($topic); $this->stompClient->send($queue, $message); return null; } }