• Модуль: clouds
  • Путь к файлу: ~/bitrix/modules/clouds/classes/general/filehash.php
  • Класс: CCloudFileHash
  • Вызов: CCloudFileHash::getFileHashAgent
static function getFileHashAgent($bucket_id, $step_size = 1000)
{
	$bucket_id = intval($bucket_id);
	if ($bucket_id <= 0)
	{
		return '';
	}
	$bucket = new CCloudStorageBucket($bucket_id);
	if (!$bucket->Init())
	{
		return '';
	}

	$last_key = BitrixCloudsFileHashTable::getLastKey($bucket_id);
	$step_size = intval($step_size);
	if ($step_size <= 0)
	{
		$step_size = 1000;
	}

	$files = $bucket->ListFiles('/', true, $step_size, $last_key);
	if ($files && $files["file"])
	{
		BitrixCloudsFileHashTable::addList($bucket_id, $files);
	}

	if (!$files || count($files["file"]) < $step_size)
	{
		//We have done with the listing proceed to save hashes to b_file_hash table.
		return "CCloudFileHash::setFileHashAgent($bucket_id, 0, $step_size);";
	}
	//Continue to read cloud hashes to the database.
	return "CCloudFileHash::getFileHashAgent($bucket_id, $step_size);";
}