FileManagerEnsureContentDownloadedCoreAsync - метод |
Загружает контент файла или версии файла, если он ещё не был загружен.
На загруженном контенте вызывается метод [IFileContent.EnsureLocalUpdatedAsync].
Пространство имён:
Tessa.Files
Сборка:
Tessa (в Tessa.dll) Версия: 3.5.0.19
Синтаксис 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
- Тип: Tessa.FilesIFileObject
Файл или версия файла, контент которых загружается. - getStateFunc
- Тип: SystemFuncIFileObject, FileContentDownloadState
Возвращает поле с состоянием содержимого для файла или версии файла obj,
или null, если используется стандартное свойство [IFileObject.ContentState].
- setStateActionAsync
- Тип: SystemFuncFileContentDownloadState, CancellationToken, ValueTask
Метод, устанавливающий состояние загружаемого контента, или null,
если состояние контента устанавливается непосредственно на свойстве [IFileObject.ContentState].
Устанавливать параметр отличным от null значением есть смысл при асинхронной загрузке контента,
когда состояние должно быть установлено в потоке UI.
- getContentFuncAsync (Optional)
- Тип: SystemFuncIFileObject, CancellationToken, ValueTaskIFileContent
Функция, возвращающая контент для заданного объекта,
или null, если используется свойство по умолчанию [IFileObject.Content].
- cancellationToken (Optional)
- Тип: System.ThreadingCancellationToken
Объект, посредством которого можно отменить асинхронную задачу.
Возвращаемое значение
Тип:
ValueTaskValidationResult
Результат загрузки контента. Если контент не загружался, то возвращается
[Tessa.Platform.Validation.ValidationResult.Empty].
См. также