* BuildEngine.cs (BuildProjectFile): Use AddProperty method to specify
[mono.git] / mcs / class / Microsoft.Build.Tasks / Microsoft.Build.Tasks / GenerateManifestBase.cs
1 //
2 // GenerateManifestBase.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.Utilities;
33 using Microsoft.Build.Tasks.Deployment.ManifestUtilities;
34
35 namespace Microsoft.Build.Tasks {
36         public abstract class GenerateManifestBase : Task {
37         
38                 string          assemblyName;
39                 string          assemblyVersion;
40                 string          description;
41                 ITaskItem       entryPoint;
42                 ITaskItem       inputManifest;
43                 int             maxTargetPath;
44                 ITaskItem       outputManifest;
45                 string          platform;
46                 string          targetCulture;
47         
48                 protected GenerateManifestBase ()
49                 {
50                 }
51
52                 [MonoTODO]
53                 public override bool Execute ()
54                 {
55                         return false;
56                 }
57                 
58                 [MonoTODO]
59                 protected internal AssemblyReference AddAssemblyFromItem (ITaskItem item)
60                 {
61                         throw new NotImplementedException ();
62                 }
63                 
64                 [MonoTODO]
65                 protected internal AssemblyReference AddAssemblyNameFromItem (ITaskItem item,
66                                                                               AssemblyReferenceType referenceType)
67                 {
68                         throw new NotImplementedException ();
69                 }
70                 
71                 [MonoTODO]
72                 protected internal AssemblyReference AddEntryPointFromItem (ITaskItem item,
73                                                                             AssemblyReferenceType referenceType)
74                 {
75                         throw new NotImplementedException ();
76                 }
77                 
78                 [MonoTODO]
79                 protected internal FileReference AddFileFromItem (ITaskItem item)
80                 {
81                         throw new NotImplementedException ();
82                 }
83                 
84                 [MonoTODO]
85                 protected internal FileReference FindFileFromItem (ITaskItem item)
86                 {
87                         throw new NotImplementedException ();
88                 }
89                 
90                 [MonoTODO]
91                 protected abstract Type GetObjectType ();
92                 
93                 [MonoTODO]
94                 protected abstract bool OnManifestLoaded (Manifest manifest);
95                 
96                 [MonoTODO]
97                 protected abstract bool OnManifestResolved (Manifest manifest);
98                 
99                 [MonoTODO]
100                 protected internal virtual bool ValidateInputs ()
101                 {
102                         throw new NotImplementedException ();
103                 }
104                 
105                 [MonoTODO]
106                 protected internal virtual bool ValidateOutput ()
107                 {
108                         throw new NotImplementedException ();
109                 }
110                 
111                 public string AssemblyName {
112                         get { return assemblyName; }
113                         set { assemblyName = value; }
114                 }
115                 
116                 public string AssemblyVersion {
117                         get { return assemblyVersion; }
118                         set { assemblyVersion = value; }
119                 }
120                 
121                 public string Description {
122                         get { return description; }
123                         set { description = value; }
124                 }
125                 
126                 public ITaskItem EntryPoint {
127                         get { return entryPoint; }
128                         set { entryPoint = value; }
129                 }
130                 
131                 public ITaskItem InputManifest {
132                         get { return inputManifest; }
133                         set { inputManifest = value; }
134                 }
135                 
136                 public int MaxTargetPath {
137                         get { return maxTargetPath; }
138                         set { maxTargetPath = value; }
139                 }
140                 
141                 [Output]
142                 public ITaskItem OutputManifest {
143                         get { return outputManifest; }
144                         set { outputManifest = value; }
145                 }
146                 
147                 public string Platform {
148                         get { return platform; }
149                         set { platform = value; }
150                 }
151                 
152                 public string TargetCulture {
153                         get { return targetCulture; }
154                         set { targetCulture = value; }
155                 }
156         }
157 }
158
159 #endif