OSDN Git Service

na-get-lib,provider.list.txtからrepos.list.xmlへ移行
authorttp <ttp@users.sourceforge.jp>
Wed, 6 May 2009 14:20:29 +0000 (23:20 +0900)
committerttp <ttp@users.sourceforge.jp>
Wed, 6 May 2009 14:20:29 +0000 (23:20 +0900)
na-get-lib/NaGet.Packages/ProviderList.cs
na-get-lib/NaGet.Packages/RepositoriesList.cs [new file with mode: 0644]
na-get-lib/NaGet.SubCommands/NaGetUpdate.cs
na-get-lib/NaGet/Env.cs
na-get-lib/na-get-lib.csproj

index 37054cc..ffe946c 100644 (file)
@@ -1,4 +1,4 @@
-using System;\r
+using System;\r
 using System.IO;\r
 using System.Collections.Generic;\r
 \r
 using System.IO;\r
 using System.Collections.Generic;\r
 \r
@@ -7,6 +7,7 @@ namespace NaGet.Packages
        /// <summary>\r
        /// パッケージリストを提供するプロバイダのリストを示すクラス\r
        /// </summary>\r
        /// <summary>\r
        /// パッケージリストを提供するプロバイダのリストを示すクラス\r
        /// </summary>\r
+       [Obsolete]\r
        public class ProviderList\r
        {\r
                /// <summary>\r
        public class ProviderList\r
        {\r
                /// <summary>\r
diff --git a/na-get-lib/NaGet.Packages/RepositoriesList.cs b/na-get-lib/NaGet.Packages/RepositoriesList.cs
new file mode 100644 (file)
index 0000000..8835115
--- /dev/null
@@ -0,0 +1,64 @@
+using System;\r
+using System.Xml.Serialization;\r
+using System.Collections.Generic;\r
+\r
+namespace NaGet.Packages\r
+{\r
+       /// <summary>\r
+       /// Description of RepositoriesList.\r
+       /// </summary>\r
+       public class RepositoriesList\r
+       {\r
+               public RepositoryReference[] Repositories;\r
+               \r
+               public RepositoriesList()\r
+               {\r
+               }\r
+               \r
+               public static RepositoriesList MigrateFromProviderListTxt(string path)\r
+               {\r
+                       List<RepositoryReference> repos = new List<RepositoryReference>();\r
+                       using(System.IO.StreamReader reader = new System.IO.StreamReader(path)) {\r
+                               string line;\r
+                               while ((line = reader.ReadLine()) != null) {\r
+                                       RepositoryReference repo = new RepositoryReference();\r
+                                       repo.Enabled = true;\r
+                                       repo.Url = new LocationEntry(line);\r
+                                       repo.Name = string.Empty;\r
+                                       repos.Add(repo);\r
+                               }\r
+                       }\r
+                       \r
+                       RepositoriesList repolist = new RepositoriesList();\r
+                       repolist.Repositories = repos.ToArray();\r
+                       return repolist;\r
+               }\r
+               \r
+               /// <summary>\r
+               /// urls of repositories.\r
+               /// </summary>\r
+               [XmlIgnore]\r
+               [Obsolete]\r
+               public string[] Urls\r
+               {\r
+                       get {\r
+                               string[] urls = new string[Repositories.Length];\r
+                               for (int i = 0; i < urls.Length; i++) {\r
+                                       urls[i] = Repositories[i].Url.Href;\r
+                               }\r
+                               return urls;\r
+                       }\r
+               }\r
+       }\r
+       \r
+       public sealed class RepositoryReference\r
+       {\r
+               [XmlAttribute]\r
+               public string Name;\r
+               \r
+               public LocationEntry Url;\r
+               \r
+               [XmlAttribute]\r
+               public bool Enabled = true;\r
+       }\r
+}\r
index 9807e1a..56efa21 100644 (file)
@@ -9,7 +9,7 @@ namespace NaGet.SubCommands
 {\r
        public class NaGetUpdate : NaGetTaskSet\r
        {\r
 {\r
        public class NaGetUpdate : NaGetTaskSet\r
        {\r
-               private ProviderList providerList;\r
+               private RepositoriesList repoList;\r
                \r
                private PackageListsManager pkgListMan;\r
                \r
                \r
                private PackageListsManager pkgListMan;\r
                \r
@@ -56,10 +56,17 @@ namespace NaGet.SubCommands
                        \r
                        System.Collections.Generic.List<string> taskSetNames = new System.Collections.Generic.List<string>();\r
                        if (downloadPackageLists) {\r
                        \r
                        System.Collections.Generic.List<string> taskSetNames = new System.Collections.Generic.List<string>();\r
                        if (downloadPackageLists) {\r
-                               providerList = new ProviderList(NaGet.Env.ProviderListFile);\r
+                               if ((! File.Exists(NaGet.Env.RepositoriesListFile)) && File.Exists(NaGet.Env.ProviderListFile)) {\r
+                                       // repos.list.xmlがなくてprovider.list.txtがあるとき、マイグレートする。\r
+                                       repoList = RepositoriesList.MigrateFromProviderListTxt(NaGet.Env.ProviderListFile);\r
+                                       NaGet.Utils.PutSerializeObject(NaGet.Env.RepositoriesListFile, repoList);\r
+                               } else {\r
+                                       // repos.list.xmlがあるとき、そこからよみとる。\r
+                                       repoList = NaGet.Utils.GetDeserializedObject<RepositoriesList>(NaGet.Env.RepositoriesListFile);\r
+                               }\r
                                \r
                                \r
-                               foreach (string url in providerList.Urls) {\r
-                                       taskSetNames.Add(string.Format("リスト取得: {0}", url));\r
+                               foreach (RepositoryReference repo in repoList.Repositories) {\r
+                                       taskSetNames.Add(string.Format("リスト取得: {0}", repo.Url.Href));\r
                                }\r
                                taskSetNames.Add(string.Format("リスト更新: {0}", NaGet.Env.PackageListFile));\r
                        }\r
                                }\r
                                taskSetNames.Add(string.Format("リスト更新: {0}", NaGet.Env.PackageListFile));\r
                        }\r
@@ -90,7 +97,7 @@ namespace NaGet.SubCommands
                                                        RaiseTaskSetEvent(NaGetTaskSetEventType.WARNING, "ネットワークに接続できませんでした。ネットワークが切断されているか、ファイアウォールによって遮断された可能性があります。");\r
                                                }\r
                                        } finally {\r
                                                        RaiseTaskSetEvent(NaGetTaskSetEventType.WARNING, "ネットワークに接続できませんでした。ネットワークが切断されているか、ファイアウォールによって遮断された可能性があります。");\r
                                                }\r
                                        } finally {\r
-                                               currentTaskSetIndex = providerList.Urls.Length + 1;\r
+                                               currentTaskSetIndex = repoList.Repositories.Length + 1;\r
                                        }\r
                                        packageListsDownloaded = true;\r
                                }\r
                                        }\r
                                        packageListsDownloaded = true;\r
                                }\r
@@ -106,14 +113,19 @@ namespace NaGet.SubCommands
                private void runDownloadPackages()\r
                {\r
                        PackageList<Package> avaiablePackageList = new PackageList<Package>();\r
                private void runDownloadPackages()\r
                {\r
                        PackageList<Package> avaiablePackageList = new PackageList<Package>();\r
-                       foreach(string provider in providerList.Urls) {\r
+                       foreach(RepositoryReference repo in repoList.Repositories) {\r
                                RaiseTaskSetEvent(NaGetTaskSetEventType.STARTED_TASKSET, TaskSetNames[currentTaskSetIndex]);\r
                                \r
                                string tmpfileName = Path.GetTempFileName();\r
                                try {\r
                                RaiseTaskSetEvent(NaGetTaskSetEventType.STARTED_TASKSET, TaskSetNames[currentTaskSetIndex]);\r
                                \r
                                string tmpfileName = Path.GetTempFileName();\r
                                try {\r
-                                       Downloader.Download(provider, tmpfileName);\r
+                                       Downloader.Download(repo.Url.Href, tmpfileName);\r
+                                       \r
+                                       PackageList<Package> pkgList = NaGet.Utils.GetDeserializedObject<PackageList<Package>>(tmpfileName);\r
+                                       \r
+                                       // RepositoryReferenceの名前を読み込む // TODO RepositoryReferenceの名前を読み込む処理はここでいいのか?\r
+                                       repo.Name = (string.IsNullOrEmpty(pkgList.Name))? repo.Name : pkgList.Name;\r
                                        \r
                                        \r
-                                       avaiablePackageList.AddPackages(NaGet.Utils.GetDeserializedObject<PackageList<Package>>(tmpfileName).Packages);\r
+                                       avaiablePackageList.AddPackages(pkgList.Packages);\r
                                } finally {\r
                                        if (File.Exists(tmpfileName)) {\r
                                                File.Delete(tmpfileName);\r
                                } finally {\r
                                        if (File.Exists(tmpfileName)) {\r
                                                File.Delete(tmpfileName);\r
@@ -124,6 +136,11 @@ namespace NaGet.SubCommands
                                RaiseTaskSetEvent(NaGetTaskSetEventType.COMPLETED_TASKSET, TaskSetNames[currentTaskSetIndex-1]);\r
                        }\r
                        \r
                                RaiseTaskSetEvent(NaGetTaskSetEventType.COMPLETED_TASKSET, TaskSetNames[currentTaskSetIndex-1]);\r
                        }\r
                        \r
+                       // TODO 暫定的にかならず常にrepositoryリストに書き込む。\r
+                       if ( true ) {\r
+                               NaGet.Utils.PutSerializeObject(NaGet.Env.RepositoriesListFile, repoList);\r
+                       }\r
+                       \r
                        RaiseTaskSetEvent(NaGetTaskSetEventType.STARTED_TASKSET, TaskSetNames[currentTaskSetIndex]);\r
                        pkgListMan.availablePkgList = avaiablePackageList; // Mediatorのリストを更新\r
                        pkgListMan.SaveAvailablePackageList();\r
                        RaiseTaskSetEvent(NaGetTaskSetEventType.STARTED_TASKSET, TaskSetNames[currentTaskSetIndex]);\r
                        pkgListMan.availablePkgList = avaiablePackageList; // Mediatorのリストを更新\r
                        pkgListMan.SaveAvailablePackageList();\r
index b133a6b..ed39c9d 100644 (file)
-using System;
-using System.IO;
-using System.Net;
-
-namespace NaGet
-{
-       /// <summary>
-       /// 環境変数などを取り扱うクラス
-       /// </summary>
-       public sealed class Env
-       {               
-               /// <summary>
-               /// 呼び出し禁止
-               /// </summary>
-               private Env()
-               {
-               }
-               
-               #region pref.xml関連
-               
-               /// <summary>
-               /// 設定を格納
-               /// </summary>
-               private static NaGetLibPref pref;
-               
-               /// <summary>
-               /// 設定ファイルを読み込む。一回のみ呼ばれる。
-               /// </summary>
-               private static void loadPref()
-               {
-                       string path = Path.Combine(Environment.CurrentDirectory, "pref.xml");
-                       try {
-                               if (! File.Exists(path)) throw new FileNotFoundException(string.Empty, path);
-                               pref = NaGet.Utils.GetDeserializedObject<NaGetLibPref>(path);
-                       } catch(Exception) {
-                               pref = new NaGetLibPref();
-                       }
-               }
-               
-               #endregion
-
-               #region ファイルパス
-               
-               /// <summary>           
-               /// ファイルリスト提供サーバのリストファイル        
-               /// </summary>
-               public static readonly string ProviderListFile = "provider.list.txt";
-
-               /// <summary>
-               /// ファイルリストから読み込まれたパッケージのリストファイル
-               /// </summary>
-               public static readonly string PackageListFile = "packages.list.xml";
-
-               /// <summary>
-               /// 本ソフトウェアを介してインストールされたパッケージのリストファイル
-               /// </summary>
-               public static readonly string ArchiveInstalledPackageListFile = "packages.envinstalled.xml";
-
-               /// <summary>
-               /// システムから検出されたパッケージのリストファイル
-               /// </summary>
-               public static readonly string SystemInstalledPackageListFile = "packages.sysinstalled.xml";
-               
-               /// <summary>
-               /// インストールログファイル
-               /// </summary>
-               public static readonly string SystemInstalledPackageLogFile = "packages.sysinstalled.log.xml";
-               
-               /// <summary>
-               /// アプリケーションデータを保存するフォルダのパス
-               /// </summary>
-               public static string AppDataFolderPath
-               {
-                       get {
-                               if (pref == null) loadPref();
-                               
-                               if (! string.IsNullOrEmpty(pref.AppDataFolder)) {
-                                       return pref.AppDataFolder;
-                               }
-                               
-                               return Environment.CurrentDirectory;
-                       }
-               }
-
-               /// <summary>
-               /// インストーラの一時置き場の親ディレクトリ
-               /// </summary>
-               public static string ArchiveFolderPath
-               {
-                       get { return Path.Combine(AppDataFolderPath, "Cache"); }
-               }
-               
-               /// <summary>
-               /// アーカイバ方式のパッケージのインストール先フォルダ
-               /// </summary>
-               public static string ArchiveProgramFiles {
-                       get {
-                               return Path.Combine(AppDataFolderPath, "progs");
-                       }
-               }
-               
-               /// <summary>
-               /// アーカイバ方式のパッケージのプログラムグループフォルダ
-               /// </summary>
-               public static string ArchiveProgramGroup {
-                       get {
-                               return Path.Combine(AppDataFolderPath, "programs");
-                       }
-               }
-
-               /// <summary>
-               /// アーカイバ方式のパッケージのSystem32のフォルダ
-               /// </summary>
-               public static string ArchiveSystem32 {
-                       get {
-                               return Path.Combine(ArchiveProgramFiles, ".system32");
-                       }
-               }
-               
-               #endregion
-               
-               #region ネットワーク
-               
-               /// <summary>
-               /// ウェブアクセスのためのプロキシを取得する。
-               /// </summary>
-               /// <returns>プロキシ</returns>
-               public static IWebProxy WebProxy
-               {
-                       get {
-                               if (pref == null) loadPref();
-                               
-                               if (string.IsNullOrEmpty(pref.ProxyAddress)) {
-                                       // 設定されていないときはシステムのデフォルトを使う
-                                       return WebRequest.GetSystemWebProxy();
-                               } else if (pref.ProxyAddress == "-") {
-                                       // "-"のとき直接接続
-                                       return null;
-                               } else {
-                                       // host:portが設定されているならば、それをもとに設定
-                                       return new WebProxy(pref.ProxyAddress);
-                               }
-                       }
-               }
-               
-               #endregion
-       }
-}
+using System;\r
+using System.IO;\r
+using System.Net;\r
+\r
+namespace NaGet\r
+{\r
+       /// <summary>\r
+       /// 環境変数などを取り扱うクラス\r
+       /// </summary>\r
+       public sealed class Env\r
+       {               \r
+               /// <summary>\r
+               /// 呼び出し禁止\r
+               /// </summary>\r
+               private Env()\r
+               {\r
+               }\r
+               \r
+               #region pref.xml関連\r
+               \r
+               /// <summary>\r
+               /// 設定を格納\r
+               /// </summary>\r
+               private static NaGetLibPref pref;\r
+               \r
+               /// <summary>\r
+               /// 設定ファイルを読み込む。一回のみ呼ばれる。\r
+               /// </summary>\r
+               private static void loadPref()\r
+               {\r
+                       string path = Path.Combine(Environment.CurrentDirectory, "pref.xml");\r
+                       try {\r
+                               if (! File.Exists(path)) throw new FileNotFoundException(string.Empty, path);\r
+                               pref = NaGet.Utils.GetDeserializedObject<NaGetLibPref>(path);\r
+                       } catch(Exception) {\r
+                               pref = new NaGetLibPref();\r
+                       }\r
+               }\r
+               \r
+               #endregion\r
+\r
+               #region ファイルパス\r
+               \r
+               /// <summary>           \r
+               /// ファイルリスト提供サーバのリストファイル        \r
+               /// </summary>\r
+               [Obsolete]\r
+               public static readonly string ProviderListFile = "provider.list.txt";\r
+               \r
+               /// <summary>\r
+               /// ファイルリスト提供レポジトリリストのファイル\r
+               /// </summary>\r
+               public static readonly string RepositoriesListFile = "repos.list.xml";\r
+\r
+               /// <summary>\r
+               /// ファイルリストから読み込まれたパッケージのリストファイル\r
+               /// </summary>\r
+               public static readonly string PackageListFile = "packages.list.xml";\r
+\r
+               /// <summary>\r
+               /// 本ソフトウェアを介してインストールされたパッケージのリストファイル\r
+               /// </summary>\r
+               public static readonly string ArchiveInstalledPackageListFile = "packages.envinstalled.xml";\r
+\r
+               /// <summary>\r
+               /// システムから検出されたパッケージのリストファイル\r
+               /// </summary>\r
+               public static readonly string SystemInstalledPackageListFile = "packages.sysinstalled.xml";\r
+               \r
+               /// <summary>\r
+               /// インストールログファイル\r
+               /// </summary>\r
+               public static readonly string SystemInstalledPackageLogFile = "packages.sysinstalled.log.xml";\r
+               \r
+               /// <summary>\r
+               /// アプリケーションデータを保存するフォルダのパス\r
+               /// </summary>\r
+               public static string AppDataFolderPath\r
+               {\r
+                       get {\r
+                               if (pref == null) loadPref();\r
+                               \r
+                               if (! string.IsNullOrEmpty(pref.AppDataFolder)) {\r
+                                       return pref.AppDataFolder;\r
+                               }\r
+                               \r
+                               return Environment.CurrentDirectory;\r
+                       }\r
+               }\r
+\r
+               /// <summary>\r
+               /// インストーラの一時置き場の親ディレクトリ\r
+               /// </summary>\r
+               public static string ArchiveFolderPath\r
+               {\r
+                       get { return Path.Combine(AppDataFolderPath, "Cache"); }\r
+               }\r
+               \r
+               /// <summary>\r
+               /// アーカイバ方式のパッケージのインストール先フォルダ\r
+               /// </summary>\r
+               public static string ArchiveProgramFiles {\r
+                       get {\r
+                               return Path.Combine(AppDataFolderPath, "progs");\r
+                       }\r
+               }\r
+               \r
+               /// <summary>\r
+               /// アーカイバ方式のパッケージのプログラムグループフォルダ\r
+               /// </summary>\r
+               public static string ArchiveProgramGroup {\r
+                       get {\r
+                               return Path.Combine(AppDataFolderPath, "programs");\r
+                       }\r
+               }\r
+\r
+               /// <summary>\r
+               /// アーカイバ方式のパッケージのSystem32のフォルダ\r
+               /// </summary>\r
+               public static string ArchiveSystem32 {\r
+                       get {\r
+                               return Path.Combine(ArchiveProgramFiles, ".system32");\r
+                       }\r
+               }\r
+               \r
+               #endregion\r
+               \r
+               #region ネットワーク\r
+               \r
+               /// <summary>\r
+               /// ウェブアクセスのためのプロキシを取得する。\r
+               /// </summary>\r
+               /// <returns>プロキシ</returns>\r
+               public static IWebProxy WebProxy\r
+               {\r
+                       get {\r
+                               if (pref == null) loadPref();\r
+                               \r
+                               if (string.IsNullOrEmpty(pref.ProxyAddress)) {\r
+                                       // 設定されていないときはシステムのデフォルトを使う\r
+                                       return WebRequest.GetSystemWebProxy();\r
+                               } else if (pref.ProxyAddress == "-") {\r
+                                       // "-"のとき直接接続\r
+                                       return null;\r
+                               } else {\r
+                                       // host:portが設定されているならば、それをもとに設定\r
+                                       return new WebProxy(pref.ProxyAddress);\r
+                               }\r
+                       }\r
+               }\r
+               \r
+               #endregion\r
+       }\r
+}\r
index 7483291..09adf4b 100644 (file)
@@ -1,92 +1,93 @@
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <ProjectGuid>{058E953D-3986-4F74-8516-5A50D267D36A}</ProjectGuid>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <OutputType>Library</OutputType>
-    <RootNamespace>na_get_lib</RootNamespace>
-    <AssemblyName>na-get-lib</AssemblyName>
-    <BaseIntermediateOutputPath>bin/</BaseIntermediateOutputPath>
-    <AllowUnsafeBlocks>False</AllowUnsafeBlocks>
-    <NoStdLib>False</NoStdLib>
-    <WarningLevel>4</WarningLevel>
-    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
-    <OutputPath>bin\Debug\</OutputPath>
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>Full</DebugType>
-    <Optimize>true</Optimize>
-    <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <OutputType>Library</OutputType>
-    <AssemblyName>na-get-lib</AssemblyName>
-    <RootNamespace>na_get_lib</RootNamespace>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
-    <OutputPath>bin\Release\</OutputPath>
-    <DebugSymbols>false</DebugSymbols>
-    <DebugType>None</DebugType>
-    <Optimize>true</Optimize>
-    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
-    <DefineConstants>TRACE</DefineConstants>
-    <OutputType>Library</OutputType>
-    <AssemblyName>na-get-lib</AssemblyName>
-    <RootNamespace>na_get_lib</RootNamespace>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' ">
-    <RegisterForComInterop>False</RegisterForComInterop>
-    <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies>
-    <BaseAddress>4194304</BaseAddress>
-    <PlatformTarget>AnyCPU</PlatformTarget>
-    <FileAlignment>4096</FileAlignment>
-  </PropertyGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" />
-  <ItemGroup>
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AssemblyInfo.cs" />
-    <Compile Include="NaGet.InteropServices\ComDirectAccess.cs" />
-    <Compile Include="NaGet.InteropServices\CommonArchiverExtracter.cs" />
-    <Compile Include="NaGet.InteropServices\CreateProcessCaller.cs" />
-    <Compile Include="NaGet.InteropServices\DllAccess.cs" />
-    <Compile Include="NaGet.InteropServices\PEFileInfoUtils.cs" />
-    <Compile Include="NaGet.InteropServices\ShellLink.cs" />
-    <Compile Include="NaGet.Net\DownloadScanner.cs" />
-    <Compile Include="NaGet.Net\GuidEnumeratorForCategories.cs" />
-    <Compile Include="NaGet.Packages.Install\DependeciesResolver.cs" />
-    <Compile Include="NaGet.Packages.Install\InstallationLog.cs" />
-    <Compile Include="NaGet.Packages\PackageListsManager.cs" />
-    <Compile Include="NaGet.Packages\VersionComparetor.cs" />
-    <Compile Include="NaGet.SubCommands\NaGetInstall.cs" />
-    <Compile Include="NaGet.SubCommands\NaGetTask.cs" />
-    <Compile Include="NaGet.SubCommands\NaGetTaskSet.cs" />
-    <Compile Include="NaGet.SubCommands\NaGetUninstall.cs" />
-    <Compile Include="NaGet\ArgParser.cs" />
-    <Compile Include="NaGet\Env.cs" />
-    <Compile Include="NaGet\NaGetLibPref.cs" />
-    <Compile Include="NaGet\Utils.cs" />
-    <Compile Include="NaGet.Net\Downloader.cs" />
-    <Compile Include="NaGet.Packages\HashValue.cs" />
-    <Compile Include="NaGet.Packages\Package.cs" />
-    <Compile Include="NaGet.Packages\Platform.cs" />
-    <Compile Include="NaGet.Packages\PackageList.cs" />
-    <Compile Include="NaGet.Packages\ProviderList.cs" />
-    <Compile Include="NaGet.Packages.Install\Installation.cs" />
-    <Compile Include="NaGet.Packages.Install\RegistriedUninstallers.cs" />
-    <Compile Include="NaGet.Packages.Install\Uninstallation.cs" />
-    <Compile Include="NaGet.Packages.Install\UninstallInformation.cs" />
-    <Compile Include="NaGet.Packages.Install\InstalledPackage.cs" />
-    <Compile Include="NaGet.SubCommands\NaGetUpdate.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <Folder Include="NaGet.InteropServices" />
-    <Folder Include="NaGet.SubCommands" />
-  </ItemGroup>
+<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">\r
+  <PropertyGroup>\r
+    <ProjectGuid>{058E953D-3986-4F74-8516-5A50D267D36A}</ProjectGuid>\r
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>\r
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>\r
+    <OutputType>Library</OutputType>\r
+    <RootNamespace>na_get_lib</RootNamespace>\r
+    <AssemblyName>na-get-lib</AssemblyName>\r
+    <BaseIntermediateOutputPath>bin/</BaseIntermediateOutputPath>\r
+    <AllowUnsafeBlocks>False</AllowUnsafeBlocks>\r
+    <NoStdLib>False</NoStdLib>\r
+    <WarningLevel>4</WarningLevel>\r
+    <TreatWarningsAsErrors>false</TreatWarningsAsErrors>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">\r
+    <OutputPath>bin\Debug\</OutputPath>\r
+    <DebugSymbols>true</DebugSymbols>\r
+    <DebugType>Full</DebugType>\r
+    <Optimize>true</Optimize>\r
+    <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>\r
+    <DefineConstants>DEBUG;TRACE</DefineConstants>\r
+    <OutputType>Library</OutputType>\r
+    <AssemblyName>na-get-lib</AssemblyName>\r
+    <RootNamespace>na_get_lib</RootNamespace>\r
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">\r
+    <OutputPath>bin\Release\</OutputPath>\r
+    <DebugSymbols>false</DebugSymbols>\r
+    <DebugType>None</DebugType>\r
+    <Optimize>true</Optimize>\r
+    <CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>\r
+    <DefineConstants>TRACE</DefineConstants>\r
+    <OutputType>Library</OutputType>\r
+    <AssemblyName>na-get-lib</AssemblyName>\r
+    <RootNamespace>na_get_lib</RootNamespace>\r
+    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>\r
+    <WarningLevel>4</WarningLevel>\r
+  </PropertyGroup>\r
+  <PropertyGroup Condition=" '$(Platform)' == 'AnyCPU' ">\r
+    <RegisterForComInterop>False</RegisterForComInterop>\r
+    <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies>\r
+    <BaseAddress>4194304</BaseAddress>\r
+    <PlatformTarget>AnyCPU</PlatformTarget>\r
+    <FileAlignment>4096</FileAlignment>\r
+  </PropertyGroup>\r
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" />\r
+  <ItemGroup>\r
+    <Reference Include="System" />\r
+    <Reference Include="System.Xml" />\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Compile Include="AssemblyInfo.cs" />\r
+    <Compile Include="NaGet.InteropServices\ComDirectAccess.cs" />\r
+    <Compile Include="NaGet.InteropServices\CommonArchiverExtracter.cs" />\r
+    <Compile Include="NaGet.InteropServices\CreateProcessCaller.cs" />\r
+    <Compile Include="NaGet.InteropServices\DllAccess.cs" />\r
+    <Compile Include="NaGet.InteropServices\PEFileInfoUtils.cs" />\r
+    <Compile Include="NaGet.InteropServices\ShellLink.cs" />\r
+    <Compile Include="NaGet.Net\DownloadScanner.cs" />\r
+    <Compile Include="NaGet.Net\GuidEnumeratorForCategories.cs" />\r
+    <Compile Include="NaGet.Packages.Install\DependeciesResolver.cs" />\r
+    <Compile Include="NaGet.Packages.Install\InstallationLog.cs" />\r
+    <Compile Include="NaGet.Packages\PackageListsManager.cs" />\r
+    <Compile Include="NaGet.Packages\RepositoriesList.cs" />\r
+    <Compile Include="NaGet.Packages\VersionComparetor.cs" />\r
+    <Compile Include="NaGet.SubCommands\NaGetInstall.cs" />\r
+    <Compile Include="NaGet.SubCommands\NaGetTask.cs" />\r
+    <Compile Include="NaGet.SubCommands\NaGetTaskSet.cs" />\r
+    <Compile Include="NaGet.SubCommands\NaGetUninstall.cs" />\r
+    <Compile Include="NaGet\ArgParser.cs" />\r
+    <Compile Include="NaGet\Env.cs" />\r
+    <Compile Include="NaGet\NaGetLibPref.cs" />\r
+    <Compile Include="NaGet\Utils.cs" />\r
+    <Compile Include="NaGet.Net\Downloader.cs" />\r
+    <Compile Include="NaGet.Packages\HashValue.cs" />\r
+    <Compile Include="NaGet.Packages\Package.cs" />\r
+    <Compile Include="NaGet.Packages\Platform.cs" />\r
+    <Compile Include="NaGet.Packages\PackageList.cs" />\r
+    <Compile Include="NaGet.Packages\ProviderList.cs" />\r
+    <Compile Include="NaGet.Packages.Install\Installation.cs" />\r
+    <Compile Include="NaGet.Packages.Install\RegistriedUninstallers.cs" />\r
+    <Compile Include="NaGet.Packages.Install\Uninstallation.cs" />\r
+    <Compile Include="NaGet.Packages.Install\UninstallInformation.cs" />\r
+    <Compile Include="NaGet.Packages.Install\InstalledPackage.cs" />\r
+    <Compile Include="NaGet.SubCommands\NaGetUpdate.cs" />\r
+  </ItemGroup>\r
+  <ItemGroup>\r
+    <Folder Include="NaGet.InteropServices" />\r
+    <Folder Include="NaGet.SubCommands" />\r
+  </ItemGroup>\r
 </Project>
\ No newline at end of file
 </Project>
\ No newline at end of file