Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAtsushi Eno <atsushieno@veritas-vos-liberabit.com>2013-11-19 12:44:37 +0400
committerAtsushi Eno <atsushieno@veritas-vos-liberabit.com>2013-12-03 11:51:40 +0400
commit580fa5a9db86bb265dfd1c4eab3326a7b9653a18 (patch)
tree6ea1c9a6740740015a19f87d4d67e67bbd001a2a /mcs/class/Microsoft.Build.Framework
parent687bd6fa3115f960adf02132618739c19f3467fc (diff)
Add missing ITaskFactory/2 and co. Add BuildEventArgs.set_Context().
Diffstat (limited to 'mcs/class/Microsoft.Build.Framework')
-rw-r--r--mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework.dll.sources3
-rw-r--r--mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/BuildEventArgs.cs7
-rw-r--r--mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/ITaskFactory.cs16
-rw-r--r--mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/ITaskFactory2.cs12
-rw-r--r--mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/TaskPropertyInfo.cs23
5 files changed, 59 insertions, 2 deletions
diff --git a/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework.dll.sources b/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework.dll.sources
index d8be848568e..d24bf602ad3 100644
--- a/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework.dll.sources
+++ b/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework.dll.sources
@@ -32,6 +32,8 @@ Microsoft.Build.Framework/IForwardingLogger.cs
Microsoft.Build.Framework/ILogger.cs
Microsoft.Build.Framework/INodeLogger.cs
Microsoft.Build.Framework/ITask.cs
+Microsoft.Build.Framework/ITaskFactory.cs
+Microsoft.Build.Framework/ITaskFactory2.cs
Microsoft.Build.Framework/ITaskHost.cs
Microsoft.Build.Framework/ITaskItem.cs
Microsoft.Build.Framework/ITaskItem2.cs
@@ -54,6 +56,7 @@ Microsoft.Build.Framework/TargetStartedEventHandler.cs
Microsoft.Build.Framework/TaskCommandLineEventArgs.cs
Microsoft.Build.Framework/TaskFinishedEventArgs.cs
Microsoft.Build.Framework/TaskFinishedEventHandler.cs
+Microsoft.Build.Framework/TaskPropertyInfo.cs
Microsoft.Build.Framework/TaskStartedEventArgs.cs
Microsoft.Build.Framework/TaskStartedEventHandler.cs
diff --git a/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/BuildEventArgs.cs b/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/BuildEventArgs.cs
index c92eaba1c65..fd2c709dd04 100644
--- a/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/BuildEventArgs.cs
+++ b/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/BuildEventArgs.cs
@@ -97,8 +97,11 @@ namespace Microsoft.Build.Framework
}
public BuildEventContext BuildEventContext {
- get {
- return context;
+ get { return context; }
+ set {
+ if (value == null)
+ throw new ArgumentNullException ("value");
+ context = value;
}
}
}
diff --git a/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/ITaskFactory.cs b/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/ITaskFactory.cs
new file mode 100644
index 00000000000..0d6820b8dcd
--- /dev/null
+++ b/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/ITaskFactory.cs
@@ -0,0 +1,16 @@
+using System;
+using System.Collections.Generic;
+
+namespace Microsoft.Build.Framework
+{
+ public interface ITaskFactory
+ {
+ string FactoryName { get; }
+ Type TaskType { get; }
+ void CleanupTask (ITask task);
+ ITask CreateTask (IBuildEngine taskFactoryLoggingHost);
+ TaskPropertyInfo [] GetTaskParameters ();
+ bool Initialize (string taskName, IDictionary<string, TaskPropertyInfo> parameterGroup, string taskBody, IBuildEngine taskFactoryLoggingHost);
+ }
+}
+
diff --git a/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/ITaskFactory2.cs b/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/ITaskFactory2.cs
new file mode 100644
index 00000000000..4659870f511
--- /dev/null
+++ b/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/ITaskFactory2.cs
@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+
+namespace Microsoft.Build.Framework
+{
+ interface ITaskFactory2 : ITaskFactory
+ {
+ ITask CreateTask (IBuildEngine taskFactoryLoggingHost, IDictionary<string, string> taskIdentityParameters);
+ bool Initialize (string taskName, IDictionary<string, string> factoryIdentityParameters, IDictionary<string, TaskPropertyInfo> parameterGroup, string taskBody, IBuildEngine taskFactoryLoggingHost);
+ }
+}
+
diff --git a/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/TaskPropertyInfo.cs b/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/TaskPropertyInfo.cs
new file mode 100644
index 00000000000..a6fbfaaf63e
--- /dev/null
+++ b/mcs/class/Microsoft.Build.Framework/Microsoft.Build.Framework/TaskPropertyInfo.cs
@@ -0,0 +1,23 @@
+using System;
+using System.Collections.Generic;
+
+namespace Microsoft.Build.Framework
+{
+ [Serializable]
+ public class TaskPropertyInfo
+ {
+ public TaskPropertyInfo (string name, Type typeOfParameter, bool output, bool required)
+ {
+ Name = name;
+ PropertyType = typeOfParameter;
+ Output = output;
+ Required = required;
+ }
+
+ public string Name { get; private set; }
+ public bool Output { get; private set; }
+ public Type PropertyType { get; private set; }
+ public bool Required { get; private set; }
+ }
+}
+