protected TaskWrapper(IAbstractTask task) { DBC.Tasks.Check.Require((task is IEnumerable == false) && (task is IEnumerator == false), "Tasks and IEnumerators are mutually exclusive"); this.task = task; DBC.Tasks.Check.Ensure(task != null, "a valid task must be assigned"); }
public IAbstractTask Add(IAbstractTask task) { if (task == null) throw new ArgumentNullException(); Add(new AsyncTask(task)); return task; }
protected virtual TaskWrapper CreateTaskWrapper(IAbstractTask task) { var taskI = task as ITask; if (taskI == null) { throw new ArgumentException(); } return(new TaskWrapper(taskI)); }
protected override TaskWrapper CreateTaskWrapper(IAbstractTask task) { var taskI = task as ITaskChain <Token>; if (taskI == null) { return(base.CreateTaskWrapper(task)); } return(new TaskWrapper <Token>(taskI)); }
public AsyncTask(IAbstractTask task) { this.task = task; enumerator = Execute(); }