using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using NaGet.SubCommands.SubTask;
using NaGet.Tasks;
namespace NaGet.SubCommands
{
///
/// NaGetタスク処理のパック
///
public abstract class NaGetTaskSet2 : Task
{
///
/// サブタスクのハンドラ
///
public virtual event EventHandler SubTaskEventRaised;
///
/// タスク処理中の質問のハンドラ
///
public event NaGetTaskQueryHandler TaskQueryRaised;
///
/// サブタスクのリスト
///
protected IList subTasks;
///
/// 文字列で表現した作業一覧リスト
///
protected IList taskSetNames;
///
/// 現在実行中のサブタスクのインデックス
///
private int currentSubTaskIndex = -1;
///
/// 終了したか
///
protected bool isDone = false;
///
/// キャンセルされたか
///
protected bool isCancelled = false;
///
/// キャンセルが呼ばれたか
///
protected bool cancelCalled = false;
///
/// キャンセル呼び出し時のイベント。
///
protected event Action