1C-Bitrix
25.700.0
Загрузка...
Поиск...
Не найдено
eventwithentityattendeesfindrule.php
См. документацию.
1
<?php
2
3
namespace
Bitrix\Calendar\Core\Queue\Rule\Rules
;
4
5
use
Bitrix\Calendar\Core\Queue\Queue
;
6
use
Bitrix\Calendar\Core\Queue\Interfaces
;
7
use
Bitrix\Calendar\Core\Queue\Message\Dictionary
;
8
9
class
EventWithEntityAttendeesFindRule
extends
DbRule
10
{
11
private
const
ROUTING_KEY =
'calendar:find_events_with_entity_attendees'
;
12
17
protected
function
getTargetQueue
(
Interfaces
\
Message
$message
): ?Queue\Queue
18
{
19
$routingKey =
$message
->getHeaders()[Dictionary::HEADER_KEYS[
'routingKey'
]] ??
null
;
20
if
($routingKey === self::ROUTING_KEY)
21
{
22
return
(
new
Queue\
QueueFactory
())->getById(Queue\QueueRegistry::QUEUE_LIST[
'EventsWithEntityAttendeesFind'
]);
23
}
24
25
return
null
;
26
}
27
32
protected
function
getMessageHash
(
Interfaces
\
Message
$message
): string
33
{
34
$data
=
$message
->getBody();
35
$hash
=
'calendar_attendee_entity_'
.
$data
[
'entityType'
];
36
if
(
$data
[
'entityId'
])
37
{
38
$hash
.=
'_'
.
$data
[
'entityId'
];
39
}
40
41
return
$hash
;
42
}
43
}
$hash
$hash
Определения
ajax_redirector.php:8
Bitrix\Calendar\Core\Queue\Message\Dictionary
Определения
dictionary.php:6
Bitrix\Calendar\Core\Queue\Queue\QueueFactory
Определения
queuefactory.php:6
Bitrix\Calendar\Core\Queue\Rule\Rules\DbRule
Определения
dbrule.php:12
Bitrix\Calendar\Core\Queue\Rule\Rules\EventWithEntityAttendeesFindRule
Определения
eventwithentityattendeesfindrule.php:10
Bitrix\Calendar\Core\Queue\Rule\Rules\EventWithEntityAttendeesFindRule\getMessageHash
getMessageHash(Interfaces\Message $message)
Определения
eventwithentityattendeesfindrule.php:32
Bitrix\Calendar\Core\Queue\Rule\Rules\EventWithEntityAttendeesFindRule\getTargetQueue
getTargetQueue(Interfaces\Message $message)
Определения
eventwithentityattendeesfindrule.php:17
$data
$data['IS_AVAILABLE']
Определения
.description.php:13
Bitrix\Calendar\Core\Queue\Interfaces\Message
Определения
message.php:16
Bitrix\Calendar\Core\Queue\Interfaces
Определения
consumer.php:3
Bitrix\Calendar\Core\Queue\Queue
Определения
queue.php:3
Bitrix\Calendar\Core\Queue\Rule\Rules
Определения
dbrule.php:3
$message
$message
Определения
payment.php:8
bitrix
modules
calendar
lib
core
queue
rule
rules
eventwithentityattendeesfindrule.php
Создано системой
1.14.0