///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2024, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются 
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////

#Область СлужебныеПроцедурыИФункции

////////////////////////////////////////////////////////////////////////////////
// Обработчики операций

// Соответствует операции Upload.
Функция ВыполнитьВыгрузку(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ХранилищеСообщенияОбмена, ОбластьДанных)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ВыполнитьВыгрузку(
		ИмяПланаОбмена, КодУзлаИнформационнойБазы, ХранилищеСообщенияОбмена, ОбластьДанных);
	
КонецФункции

// Соответствует операции UploadData.
Функция ВыполнитьВыгрузкуДанных(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайлаСтрокой, ДлительнаяОперация,
	ИдентификаторОперации, ДлительнаяОперацияРазрешена, ОбластьДанных)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ВыполнитьВыгрузкуДанных(ИмяПланаОбмена, КодУзлаИнформационнойБазы, 
		ИдентификаторФайлаСтрокой, ДлительнаяОперация, ИдентификаторОперации, ДлительнаяОперацияРазрешена, ОбластьДанных)

КонецФункции

// Соответствует операции UploadDataInt.
Функция ВыполнитьВыгрузкуДанныхВнутренняяПубликация(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторЗадачи, ОбластьДанных)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ВыполнитьВыгрузкуДанныхВнутренняяПубликация(
		ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторЗадачи, ОбластьДанных);
	
КонецФункции

// Соответствует операции Download.
Функция ВыполнитьЗагрузку(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ХранилищеСообщенияОбмена, ОбластьДанных)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ВыполнитьЗагрузку(
		ИмяПланаОбмена, КодУзлаИнформационнойБазы, ХранилищеСообщенияОбмена, ОбластьДанных);
	
КонецФункции

// Соответствует операции DownloadData.
Функция ВыполнитьЗагрузкуДанных(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторФайлаСтрокой, ДлительнаяОперация,
	ИдентификаторОперации, ДлительнаяОперацияРазрешена, ОбластьДанных)
		
	Возврат ОбменДаннымиОперацииВебСервисов.ВыполнитьЗагрузкуДанных(ИмяПланаОбмена, КодУзлаИнформационнойБазы, 
		ИдентификаторФайлаСтрокой, ДлительнаяОперация, ИдентификаторОперации, ДлительнаяОперацияРазрешена, ОбластьДанных);
	
КонецФункции

// Соответствует операции DownloadDataInt.
Функция ВыполнитьЗагрузкуДанныхВнутренняяПубликация(ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторЗадачи,
	ИдентификаторФайлаСтрокой, ОбластьДанных)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ВыполнитьЗагрузкуДанныхВнутренняяПубликация(
		ИмяПланаОбмена, КодУзлаИнформационнойБазы, ИдентификаторЗадачи,
		ИдентификаторФайлаСтрокой, ОбластьДанных);
	
КонецФункции

// Соответствует операции GetIBParameters.
Функция ПолучитьПараметрыИнформационнойБазы(ИмяПланаОбмена, КодУзла, СообщениеОбОшибке, ОбластьДанных) 
	
	Возврат ОбменДаннымиОперацииВебСервисов.ПолучитьПараметрыИнформационнойБазы(
		ИмяПланаОбмена, КодУзла, СообщениеОбОшибке, ОбластьДанных)
	
КонецФункции

// Соответствует операции CreateExchangeNode.
Функция СоздатьУзелОбменаДанными(ПараметрыXDTO, ОбластьДанных)
	
	Возврат ОбменДаннымиОперацииВебСервисов.СоздатьУзелОбменаДанными(ПараметрыXDTO, ОбластьДанных);
	
КонецФункции

// Соответствует операции RemoveExchangeNode.
Функция УдалитьУзелОбменаДанными(ИмяПланаОбмена, ИдентификаторУзла, ОбластьДанных)
	
	Возврат ОбменДаннымиОперацииВебСервисов.УдалитьУзелОбменаДанными(ИмяПланаОбмена, ИдентификаторУзла, ОбластьДанных);
	
КонецФункции

// Соответствует операции GetContinuousOperationStatus.
Функция ПолучитьСостояниеДлительнойОперации(ИдентификаторОперации, СтрокаСообщенияОбОшибке, ОбластьДанных)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ПолучитьСостояниеДлительнойОперации(
		ИдентификаторОперации, СтрокаСообщенияОбОшибке, ОбластьДанных);
	
КонецФункции

// Соответствует операции PrepareGetFile.
Функция PrepareGetFile(FileId, BlockSize, TransferId, PartQuantity, Zone)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ПодготовитьФайлДляПолучения(FileId, BlockSize, TransferId, PartQuantity, Zone);

КонецФункции

// Соответствует операции GetFilePart.
Функция GetFilePart(TransferId, PartNumber, PartData, Zone)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ПолучитьЧастьФайла(TransferId, PartNumber, PartData, Zone);
	
КонецФункции

// Соответствует операции ReleaseFile.
Функция ReleaseFile(TransferId)
	
	Возврат ОбменДаннымиОперацииВебСервисов.УдалитьСообщениеОбмена(TransferId);
	
КонецФункции

// Соответствует операции PutFilePart.
//
// Параметры:
//   TransferId - УникальныйИдентификатор - уникальный идентификатор сессии передачи данных.
//   PartNumber - Число - номер части файла.
//   PartData - ДвоичныеДанные - данные части файла.
//
Функция PutFilePart(TransferId, PartNumber, PartData, Zone)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ПоместитьЧастьФайла(TransferId, PartNumber, PartData, Zone);
	
КонецФункции

// Соответствует операции SaveFileFromParts.
Функция SaveFileFromParts(TransferId, PartQuantity, FileId, Zone)
	
	Возврат ОбменДаннымиОперацииВебСервисов.СобратьФайлИзЧастей(TransferId, PartQuantity, FileId, Zone);
	
КонецФункции

// Соответствует операции PutMessageForDataMatching.
Функция PutMessageForDataMatching(ИмяПланаОбмена, ИдентификаторУзла, ИдентификаторФайла, ОбластьДанных)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ПоместитьСообщениеДляСопоставленияДанных(
		ИмяПланаОбмена, ИдентификаторУзла, ИдентификаторФайла, ОбластьДанных);
	
КонецФункции

// Соответствует операции Ping.
Функция Ping()
	// Проверка связи.
	Возврат "";
КонецФункции

// Соответствует операции TestConnection.
Функция TestConnection(ИмяПланаОбмена, КодУзла, Результат, ОбластьДанных)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ТестовоеПодключение(ИмяПланаОбмена, КодУзла, Результат, ОбластьДанных);
	
КонецФункции

// Соответствует операции ChangeNodeTransportToWSPass.
Функция ChangeNodeTransportToWSInt(ПараметрыXDTO, ОбластьДанных)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ИзменитьТранспортНаВебСервисВнутренняяПубликация(ПараметрыXDTO, ОбластьДанных);
	
КонецФункции

// Соответствует операции Callback.
Функция Callback(TaskID, Error, Zone)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ОтветныйВызов(TaskID, Error, Zone);
	
КонецФункции

// Соответствует операции TaskStatus.
Функция TaskStatus(TaskID)
	
	Возврат ОбменДаннымиОперацииВебСервисов.СтатусЗадачи(TaskID);
	
КонецФункции

// Соответствует операции StopTasks.
Функция StopTasks(TasksID, Zone)
	
	Возврат ОбменДаннымиОперацииВебСервисов.ОстановитьЗадачи(TasksID, Zone);
	
КонецФункции

#КонецОбласти
