**** Merged from MCS ****
[mono-project.git] / mcs / class / System.Configuration.Install / System.Configuration.Install / Installer.cs
blob5a0058fe60801ca138a5d91778d123f49a481a24
1 // System.Configuration.Install.Installer.cs
2 //
3 // Author:
4 // Alejandro Sánchez Acosta <raciel@es.gnu.org>
5 //
6 // Alejandro Sánchez Acosta
7 //
9 //
10 // Permission is hereby granted, free of charge, to any person obtaining
11 // a copy of this software and associated documentation files (the
12 // "Software"), to deal in the Software without restriction, including
13 // without limitation the rights to use, copy, modify, merge, publish,
14 // distribute, sublicense, and/or sell copies of the Software, and to
15 // permit persons to whom the Software is furnished to do so, subject to
16 // the following conditions:
17 //
18 // The above copyright notice and this permission notice shall be
19 // included in all copies or substantial portions of the Software.
20 //
21 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
22 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
23 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
24 // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
25 // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
26 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
27 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30 using System.Collections;
31 using System.ComponentModel;
32 using System.ComponentModel.Design;
34 namespace System.Configuration.Install
36 [DefaultEvent("AfterInstall")]
37 #if (!NET_2_0)
38 // .NET 2.0 (Community Preview) no longer has this attribute
39 [Designer("Microsoft.VisualStudio.Configuration.InstallerDesigner, " + Consts.AssemblyMicrosoft_VisualStudio, typeof(IRootDesigner))]
40 #endif
41 public class Installer : Component
43 private InstallContext context;
44 private string helptext;
45 private InstallerCollection installers;
46 internal Installer parent;
48 [MonoTODO]
49 public Installer () {
50 throw new NotImplementedException ();
53 [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
54 [BrowsableAttribute(false)]
55 public InstallContext Context {
56 get {
57 return context;
60 set {
61 context = value;
65 public virtual string HelpText {
66 get {
67 return helptext;
71 [DesignerSerializationVisibility (DesignerSerializationVisibility.Content)]
72 [BrowsableAttribute(false)]
73 public InstallerCollection Installers {
74 get {
75 return installers;
79 [TypeConverter ("System.Configuration.Design.InstallerParentConverter")]
80 [DesignerSerializationVisibility (DesignerSerializationVisibility.Hidden)]
81 [BrowsableAttribute (false)]
82 public Installer Parent {
83 get {
84 return parent;
87 set {
88 parent = value;
92 [MonoTODO]
93 public virtual void Commit (IDictionary savedState)
95 throw new NotImplementedException ();
98 [MonoTODO]
99 public virtual void Install (IDictionary stateSaver)
101 throw new NotImplementedException ();
104 [MonoTODO]
105 protected virtual void OnAfterInstall (IDictionary savedState)
107 throw new NotImplementedException ();
110 [MonoTODO]
111 protected virtual void OnAfterRollback (IDictionary savedState)
113 throw new NotImplementedException ();
116 [MonoTODO]
117 protected virtual void OnAfterUninstall (IDictionary savedState)
119 throw new NotImplementedException ();
122 [MonoTODO]
123 protected virtual void OnBeforeInstall (IDictionary savedState)
125 throw new NotImplementedException ();
128 [MonoTODO]
129 protected virtual void OnBeforeRollback (IDictionary savedState)
131 throw new NotImplementedException ();
134 [MonoTODO]
135 protected virtual void OnBeforeUninstall (IDictionary savedState)
137 throw new NotImplementedException ();
140 [MonoTODO]
141 protected virtual void OnCommitted (IDictionary savedState)
143 throw new NotImplementedException ();
146 [MonoTODO]
147 protected virtual void OnCommitting (IDictionary savedState)
149 throw new NotImplementedException ();
152 [MonoTODO]
153 public virtual void Rollback (IDictionary savedState)
155 throw new NotImplementedException ();
158 [MonoTODO]
159 public virtual void Uninstall (IDictionary savedState)
161 throw new NotImplementedException ();
164 public event InstallEventHandler AfterInstall;
166 public event InstallEventHandler AfterRollback;
168 public event InstallEventHandler AfterUninstall;
170 public event InstallEventHandler BeforeInstall;
172 public event InstallEventHandler BeforeRollback;
174 public event InstallEventHandler BeforeUninstall;
176 public event InstallEventHandler Committed;
178 public event InstallEventHandler Committing;