FileManagerEnsureContentDownloadedCoreAsync - метод
Загружает контент файла или версии файла, если он ещё не был загружен.
На загруженном контенте вызывается метод [IFileContent.EnsureLocalUpdatedAsync].
Пространство имён: Tessa.FilesСборка: Tessa (в Tessa.dll) Версия: 3.6.0.22
protected virtual ValueTask<ValidationResult> EnsureContentDownloadedCoreAsync(
IFileObject obj,
Func<IFileObject, FileContentDownloadState> getStateFunc,
Func<FileContentDownloadState, CancellationToken, ValueTask> setStateActionAsync,
Func<IFileObject, CancellationToken, ValueTask<IFileContent>> getContentFuncAsync = null,
CancellationToken cancellationToken = default
)
Protected Overridable Function EnsureContentDownloadedCoreAsync (
obj As IFileObject,
getStateFunc As Func(Of IFileObject, FileContentDownloadState),
setStateActionAsync As Func(Of FileContentDownloadState, CancellationToken, ValueTask),
Optional getContentFuncAsync As Func(Of IFileObject, CancellationToken, ValueTask(Of IFileContent)) = Nothing,
Optional cancellationToken As CancellationToken = Nothing
) As ValueTask(Of ValidationResult)
protected:
virtual ValueTask<ValidationResult^> EnsureContentDownloadedCoreAsync(
IFileObject^ obj,
Func<IFileObject^, FileContentDownloadState>^ getStateFunc,
Func<FileContentDownloadState, CancellationToken, ValueTask>^ setStateActionAsync,
Func<IFileObject^, CancellationToken, ValueTask<IFileContent^>>^ getContentFuncAsync = nullptr,
CancellationToken cancellationToken = CancellationToken()
)
abstract EnsureContentDownloadedCoreAsync :
obj : IFileObject *
getStateFunc : Func<IFileObject, FileContentDownloadState> *
setStateActionAsync : Func<FileContentDownloadState, CancellationToken, ValueTask> *
?getContentFuncAsync : Func<IFileObject, CancellationToken, ValueTask<IFileContent>> *
?cancellationToken : CancellationToken
(* Defaults:
let _getContentFuncAsync = defaultArg getContentFuncAsync null
let _cancellationToken = defaultArg cancellationToken new CancellationToken()
*)
-> ValueTask<ValidationResult>
override EnsureContentDownloadedCoreAsync :
obj : IFileObject *
getStateFunc : Func<IFileObject, FileContentDownloadState> *
setStateActionAsync : Func<FileContentDownloadState, CancellationToken, ValueTask> *
?getContentFuncAsync : Func<IFileObject, CancellationToken, ValueTask<IFileContent>> *
?cancellationToken : CancellationToken
(* Defaults:
let _getContentFuncAsync = defaultArg getContentFuncAsync null
let _cancellationToken = defaultArg cancellationToken new CancellationToken()
*)
-> ValueTask<ValidationResult>
- obj IFileObject
- Файл или версия файла, контент которых загружается.
- getStateFunc FuncIFileObject, FileContentDownloadState
-
Возвращает поле с состоянием содержимого для файла или версии файла obj,
или null, если используется стандартное свойство [IFileObject.ContentState].
- setStateActionAsync FuncFileContentDownloadState, CancellationToken, ValueTask
-
Метод, устанавливающий состояние загружаемого контента, или null,
если состояние контента устанавливается непосредственно на свойстве [IFileObject.ContentState].
Устанавливать параметр отличным от null значением есть смысл при асинхронной загрузке контента,
когда состояние должно быть установлено в потоке UI.
- getContentFuncAsync FuncIFileObject, CancellationToken, ValueTaskIFileContent (Optional)
-
Функция, возвращающая контент для заданного объекта,
или null, если используется свойство по умолчанию [IFileObject.Content].
- cancellationToken CancellationToken (Optional)
- Объект, посредством которого можно отменить асинхронную задачу.
ValueTaskValidationResult
Результат загрузки контента. Если контент не загружался, то возвращается
[Tessa.Platform.Validation.ValidationResult.Empty].