Microsoft.Build.BuildEngine.Target.ExecuteOnErrors C# (CSharp) Method

ExecuteOnErrors() private method

private ExecuteOnErrors ( ) : void
return void
		void ExecuteOnErrors ()
		{
			foreach (XmlElement onError in onErrorElements) {
				if (onError.GetAttribute ("ExecuteTargets") == String.Empty)
					throw new InvalidProjectFileException ("ExecuteTargets attribute is required in OnError element.");

				string on_error_condition = onError.GetAttribute ("Condition");
				if (!ConditionParser.ParseAndEvaluate (on_error_condition, Project)) {
					LogMessage (MessageImportance.Low,
						"OnError for target {0} skipped due to false condition: {1}",
						Name, on_error_condition);
					continue;
				}

				string[] targetsToExecute = onError.GetAttribute ("ExecuteTargets").Split (';');
				foreach (string t in targetsToExecute)
					this.project.Targets [t].Build ();
			}
		}