Example #1
0
 /// <summary>
 /// Executes a parallel target using the correct <see cref="ITargetLogger"/>
 /// </summary>
 /// <param name="pcall">The target</param>
 /// <param name="cacophony">Whether or not cacophany logging is requested</param>
 /// <param name="state">The concurrency state used to synchonize the threads</param>
 /// <param name="index">The index of this thread in the grand scheme of things</param>
 private void ExecuteWithCorrectLogging(ParallelTarget pcall, Boolean cacophony, ConcurrencyState state, Int32 index)
 {
     try
     {
         this.ExecuteWithCorrectLogging(
             () => this.Project.Execute(pcall.TargetName, pcall.CascadeDependencies, this, this.CloneCallStack(), this.Logger, pcall.Arguments),
             logger => this.Project.Execute(pcall.TargetName, pcall.CascadeDependencies, this, this.CloneCallStack(), logger, pcall.Arguments),
             cacophony,
             state,
             index);
     }
     catch (ArgumentException e)
     {
         throw new BuildException(e.Message, this.Location);
     }
 }
Example #2
0
 public virtual void AddPath(ParallelTarget path)
 {
     this.Children.Add(path);
 }