• Модуль: clouds
  • Путь к файлу: ~/bitrix/modules/clouds/classes/general/failover.php
  • Класс: CCloudFailover
  • Вызов: CCloudFailover::queueRename
static function queueRename($obBucket, $FILE_PATH_FROM, $FILE_PATH_TO)
{
	if (
		$obBucket->FAILOVER_BUCKET_ID > 0
		&& $obBucket->FAILOVER_COPY === "Y"
		&& $obBucket->getQueueFlag()
	)
	{
		if (
			($obBucket->isFailoverEnabled() && CCloudFailover::IsEnabled())
			&& ($obBucket->FAILOVER_ACTIVE === "Y")
		)
		{
			$BUCKET_ID = $obBucket->ID;
		}
		else
		{
			$BUCKET_ID = $obBucket->FAILOVER_BUCKET_ID;
		}

		BitrixCloudsCopyQueueTable::add(array(
			"TIMESTAMP_X" => new BitrixMainTypeDateTime(),
			"OP" => BitrixCloudsCopyQueueTable::OP_RENAME,
			"SOURCE_BUCKET_ID" => $BUCKET_ID,
			"SOURCE_FILE_PATH" => $FILE_PATH_FROM,
			"TARGET_BUCKET_ID" => $BUCKET_ID,
			"TARGET_FILE_PATH" => $FILE_PATH_TO,
		));

		$deleteTasks = BitrixCloudsDeleteQueueTable::getList(array(
			'select' => array('ID'),
			'filter'=> array(
				'=BUCKET_ID' => $BUCKET_ID,
				'=FILE_PATH' => $FILE_PATH_TO,
			),
		));
		while ($task = $deleteTasks->fetch())
		{
			BitrixCloudsDeleteQueueTable::delete($task['ID']);
		}
	}
}