Merge pull request #799 from kebby/master
[mono.git] / mcs / class / Microsoft.Build.Tasks / Microsoft.Build.Tasks / SGen.cs
1 //
2 // SGen.cs
3 //
4 // Author:
5 //   Marek Sieradzki (marek.sieradzki@gmail.com)
6 //
7 // (C) 2006 Marek Sieradzki
8 //
9 // Permission is hereby granted, free of charge, to any person obtaining
10 // a copy of this software and associated documentation files (the
11 // "Software"), to deal in the Software without restriction, including
12 // without limitation the rights to use, copy, modify, merge, publish,
13 // distribute, sublicense, and/or sell copies of the Software, and to
14 // permit persons to whom the Software is furnished to do so, subject to
15 // the following conditions:
16 //
17 // The above copyright notice and this permission notice shall be
18 // included in all copies or substantial portions of the Software.
19 //
20 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
21 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
23 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
24 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
25 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
26 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27
28 #if NET_2_0
29
30 using System;
31 using Microsoft.Build.Framework; 
32 using Microsoft.Build.Tasks;
33 using Mono.XBuild.Utilities;
34
35 namespace Microsoft.Build.Tasks {
36         public class SGen : ToolTaskExtension {
37         
38                 string buildAssemblyName;
39                 string buildAssemblyPath;
40                 bool delaySign;
41                 string keyContainer;
42                 string keyFile;
43                 string [] references;
44                 ITaskItem [] serializationAssembly;
45                 string serializationAssemblyName;
46                 bool shouldGenerateSerializer;
47                 bool useProxyTypes;
48
49                 public SGen ()
50                 {
51                 }
52
53                 [MonoTODO]
54                 [Required]
55                 public string BuildAssemblyName {
56                         get { return buildAssemblyName; }
57                         set { buildAssemblyName = value; }
58                 }
59
60                 [MonoTODO]
61                 [Required]
62                 public string BuildAssemblyPath {
63                         get { return buildAssemblyPath; }
64                         set { buildAssemblyPath = value; }
65                 }
66
67                 [MonoTODO]
68                 public bool DelaySign {
69                         get { return delaySign; }
70                         set { delaySign = value; }
71                 }
72
73                 [MonoTODO]
74                 public string KeyContainer {
75                         get { return keyContainer; }
76                         set { keyContainer = value; }
77                 }
78
79                 [MonoTODO]
80                 public string KeyFile {
81                         get { return keyFile; }
82                         set { keyFile = value; }
83                 }
84
85                 [MonoTODO]
86                 public string [] References {
87                         get { return references; }
88                         set { references = value; }
89                 }
90
91                 [MonoTODO]
92                 [Output]
93                 public ITaskItem [] SerializationAssembly {
94                         get { return serializationAssembly; }
95                         set { serializationAssembly = value; }
96                 }
97
98                 [MonoTODO]
99                 public string SerializationAssemblyName {
100                         get { return serializationAssemblyName; }
101                 }
102
103                 [MonoTODO]
104                 [Required]
105                 public bool ShouldGenerateSerializer {
106                         get { return shouldGenerateSerializer; }
107                         set { shouldGenerateSerializer = value; }
108                 }
109
110                 [MonoTODO]
111                 [Required]
112                 public bool UseProxyTypes {
113                         get { return useProxyTypes; }
114                         set { useProxyTypes = value; }
115                 }
116
117                 [MonoTODO]
118                 protected override string ToolName {
119                         get { return MSBuildUtils.RunningOnWindows ? "sgen.bat" : "sgen"; }
120                 }
121
122                 [MonoTODO]
123                 protected override string GenerateCommandLineCommands ()
124                 {
125                         throw new NotImplementedException ();
126                 }
127
128                 [MonoTODO]
129                 protected override string GenerateFullPathToTool ()
130                 {
131                         throw new NotImplementedException ();
132                 }
133
134                 [MonoTODO]
135                 protected override bool SkipTaskExecution ()
136                 {
137                         throw new NotImplementedException ();
138                 }
139
140                 [MonoTODO]
141                 protected override bool ValidateParameters ()
142                 {
143                         throw new NotImplementedException ();
144                 }
145         }
146 }
147
148 #endif