1 using System.Xml.Serialization;
\r
3 namespace NaGet.Packages
\r
8 public enum InstallerType
\r
13 [XmlEnum(Name="installer")]
\r
16 /// Microsoft Software Installer
\r
18 [XmlEnum(Name="msi")]
\r
23 [XmlEnum(Name="archive")]
\r
26 /// それ自身がプログラムそのものである
\r
28 [XmlEnum(Name="itself")]
\r
31 /// インストールできない単なるデータ(BIOSなど)
\r
33 [XmlEnum(Name="cannotinstall")]
\r
40 public class Package
\r
50 public string Version;
\r
55 public string Summary;
\r
60 public string Description;
\r
65 public LocationEntry Url;
\r
70 public string Author;
\r
75 public InstallerType Type;
\r
78 /// インストーラが書庫内に入っているかのフラグ
\r
80 public bool ArchivedInstaller = false;
\r
83 /// アンインストーラのレジストリのキー
\r
85 public string UninstallerKey;
\r
88 /// サイレントインストールのための引数。
\r
89 /// インストーラ形式のみ有効で、nullもしくは空文字列の場合は
\r
90 /// サイレントインストールができないことをあらわす
\r
92 public string SilentInstallArguments;
\r
95 /// インストールスクリプト(MSBuildドキュメント)
\r
97 public string InstallScript;
\r
100 /// アーカイブインストーラのときのSystem32のコピー
\r
102 public string System32CopyFiles;
\r
108 public Installer[] Installer;
\r
113 [XmlArray(IsNullable=true),XmlArrayItem("Entry")]
\r
114 public Entry[] Requires;
\r
119 [XmlArray(IsNullable=true),XmlArrayItem("Entry")]
\r
120 public Entry[] Conflicts;
\r
125 public string Tags;
\r
130 public string License;
\r
135 public string PackageListName;
\r
147 public string Name;
\r
149 /// パッケージのバージョン比較の式
\r
152 public string Flags;
\r
156 public string Version;
\r
159 public class Installer
\r
168 public Platform Platform;
\r
171 /// ダウンロードリソースURLの配列
\r
173 public LocationEntry Url;
\r
179 public HashValue[] Hash;
\r
185 public class LocationEntry
\r
187 // TODO LocationEntryは果たして必要なのかの、考察
\r
192 public LocationEntry()
\r
199 /// <param name="sHref">リソースのURL</param>
\r
200 public LocationEntry(string sHref)
\r
209 public string Href;
\r