Namespace NanoByte.Common.Tasks
Task system for managing long-running tasks and reporting progress to the user.
Classes
AnsiCliProgress
Reports task progress updates using ANSI console output.
AnsiCliProgressContext
Container for one or more ANSI console progress bars.
AnsiCliTaskHandler
Informs the user about the progress of tasks and ask questions using ANSI console output.
CliProgress
Reports task progress updates using console output.
CliTaskHandler
Informs the user about the progress of tasks and ask questions using console output.
DialogTaskHandler
Uses simple WinForms dialog boxes to inform the user about the progress of tasks.
ForEachTask
Provides a static factory method for ForEachTask<T> as an alternative to calling the constructor to exploit type inference.
ForEachTask<T>
A task that performs an operation once for each element of a collection.
GuiTaskHandlerBase
Common base class for WinForms ITaskHandler implementations.
PercentProgressCallback
A callback to be called by a workload to report its progress in percent.
ServiceTaskHandler
Uses ILogger<TCategoryName>, ICredentialProvider and CancellationTokenSource from IServiceProvider if available. Executes tasks silently and suppresses any questions.
SilentTaskHandler
Executes tasks silently and suppresses any questions.
SimplePercentTask
A delegate-driven task. Progress is reported in percent.
SimpleTask
A delegate-driven task. Only completion is reported, no intermediate progress.
TaskBase
Abstract base class for ITask implementations.
TaskHandlerBase
Common base class for ITaskHandler implementations.
TaskHandlerExtensions
Extension methods for ITaskHandler
TaskSnapshot
Represents a progress snapshot of an ITask.
TaskState
Represents different states a (usually Web- or IO-related) task can be in.
Verbosity
Interfaces
ITask
Represents an operation that can be cancelled and have its progress tracked.
ITaskHandler
Used to run and track ITasks and ask the user questions. Specific implementations provide different kinds of user interfaces.