• Модуль: calendar
  • Путь к файлу: ~/bitrix/modules/calendar/lib/sync/office365/incomingmanager.php
  • Класс: BitrixCalendarSyncOffice365IncomingManager
  • Вызов: IncomingManager::prepareSyncEvent
private function prepareSyncEvent(
	EventDto $eventDto,
	SyncSection $section
): SyncEvent
{

	$event = $this->context->getConverter()
		->convertEvent($eventDto, $section->getSection());
	$eventConnection = (new EventConnection())
		->setEvent($event)
		->setConnection($section->getSectionConnection()->getConnection())
		->setVendorEventId($eventDto->id)
		->setVendorVersionId($eventDto->changeKey)
		->setEntityTag($eventDto->etag)
		->setRecurrenceId($eventDto->seriesMasterId ?: null)
		->setData($this->prepareCustomData($eventDto))
		->setLastSyncStatus(Dictionary::SYNC_STATUS['success'])
	;

	return (new SyncEvent())
		->setEvent($event)
		->setEventConnection($eventConnection);
}