using System; namespace NaGet.Tasks { /// /// タスクイベントの種類 /// public enum TaskEventType { /// /// 動作進捗・通知のみ /// PING, /// /// 開始 /// STARTED, /// /// 完了した(すべてを完了) /// COMPLETED, /// /// 作業がキャンセルされた /// CANCELED, /// /// エラーを発生し(中断した) /// ERROR, /// /// エラーが発生したが継続 /// WARNING, /// /// そのほかの情報 /// INFO, /// /// 子作業を開始 /// STARTED_SUBTASK, /// /// 子作業を終了 /// COMPLETED_SUBTASK, } /// /// タスクのイベント /// public class TaskEventArgs : EventArgs { /// /// タスクイベントの種類 /// public TaskEventType Type = TaskEventType.PING; /// /// タスクの進捗状況の百分率表示 /// public float ProgressPercent = -1; /// /// タスクの現況のメッセージ /// public string TaskMessage; /// /// コンストラクタ /// public TaskEventArgs() : this(TaskEventType.PING, null, -1) { } /// /// コンストラクタ /// public TaskEventArgs(TaskEventType type, string message, float percent) { this.Type = type; this.TaskMessage = message; this.ProgressPercent = percent; } } }