3namespace Bitrix\Calendar\Core\Queue\Producer;
5use Bitrix\Calendar\Core\Base\BaseException;
6use Bitrix\Calendar\Core\Queue\Interfaces;
7use Bitrix\Calendar\Core\Queue\Message\Dictionary;
8use Bitrix\Calendar\Core\Queue\Message\MessageMapper;
9use Bitrix\Calendar\Core\Queue\Rule\RuleMaster;
10use Bitrix\Calendar\Internals\QueueMessageTable;
11use Bitrix\Main\ArgumentException;
12use Bitrix\Main\SystemException;
13use Bitrix\Main\Type\DateTime;
30 $this->getMapper()->create(
$message);
45 $realMessagesData = [];
51 $realMessagesData[] = [
53 Dictionary::MESSAGE_PARTS[
'body'] =>
$message->getBody(),
54 Dictionary::MESSAGE_PARTS[
'headers'] =>
$message->getHeaders(),
55 Dictionary::MESSAGE_PARTS[
'properties'] =>
$message->getProperties(),
57 'DATE_CREATE' => $dateCreate,
62 if (!empty($realMessagesData))
64 QueueMessageTable::addMulti($realMessagesData,
true);
65 $this->throwEventForQueue();
74 if ($this->mapper ===
null)
88 private function throwEventForQueue(Interfaces\Message
$message =
null): void
91 (
new RuleMaster())->run();
sendBatch(array $messages)
send(Interfaces\Message $message)
</td ></tr ></table ></td ></tr >< tr >< td class="bx-popup-label bx-width30"><?=GetMessage("PAGE_NEW_TAGS")?> array( $site)