OSDN Git Service

na-get-lib,レポジトリリストのEnabled="false"に対応させた。
authorttp <ttp@users.sourceforge.jp>
Sat, 9 May 2009 02:48:41 +0000 (11:48 +0900)
committerttp <ttp@users.sourceforge.jp>
Sat, 9 May 2009 02:48:41 +0000 (11:48 +0900)
na-get-lib/NaGet.Packages/RepositoriesList.cs
na-get-lib/NaGet.SubCommands/NaGetUpdate.cs

index d21ad5e..99eba63 100644 (file)
@@ -22,6 +22,18 @@ namespace NaGet.Packages
                }\r
                \r
                /// <summary>\r
+               /// 有効なレポジトリの配列を返す\r
+               /// </summary>\r
+               [XmlIgnore]\r
+               public RepositoryInfo[] EnabledRepositories {\r
+                       get {\r
+                               return Array.FindAll(Repositories, delegate(RepositoryInfo repo) {\r
+                                                       return repo.Enabled;\r
+                                                    });\r
+                       }\r
+               }\r
+               \r
+               /// <summary>\r
                /// provider.list.txtから変換してRepositoriesListとして返す\r
                /// </summary>\r
                /// <param name="path">変換もとのprovider.list.txtのパス</param>\r
index f1533de..0bcfe40 100644 (file)
@@ -65,7 +65,7 @@ namespace NaGet.SubCommands
                                        repoList = NaGet.Utils.GetDeserializedObject<RepositoriesList>(NaGet.Env.RepositoriesListFile);\r
                                }\r
                                \r
-                               foreach (RepositoryInfo repo in repoList.Repositories) {\r
+                               foreach (RepositoryInfo repo in repoList.EnabledRepositories) {\r
                                        taskSetNames.Add(string.Format("リスト取得: {0}", repo.Url.Href));\r
                                }\r
                                taskSetNames.Add(string.Format("リスト更新: {0}", NaGet.Env.PackageListFile));\r
@@ -97,7 +97,7 @@ namespace NaGet.SubCommands
                                                        RaiseTaskSetEvent(NaGetTaskSetEventType.WARNING, "ネットワークに接続できませんでした。ネットワークが切断されているか、ファイアウォールによって遮断された可能性があります。");\r
                                                }\r
                                        } finally {\r
-                                               currentTaskSetIndex = repoList.Repositories.Length + 1;\r
+                                               currentTaskSetIndex = repoList.EnabledRepositories.Length + 1;\r
                                        }\r
                                        packageListsDownloaded = true;\r
                                }\r
@@ -113,7 +113,7 @@ namespace NaGet.SubCommands
                private void runDownloadPackages()\r
                {\r
                        PackageList<Package> avaiablePackageList = new PackageList<Package>();\r
-                       foreach(RepositoryInfo repo in repoList.Repositories) {\r
+                       foreach(RepositoryInfo repo in repoList.EnabledRepositories) {\r
                                RaiseTaskSetEvent(NaGetTaskSetEventType.STARTED_TASKSET, TaskSetNames[currentTaskSetIndex]);\r
                                \r
                                string tmpfileName = Path.GetTempFileName();\r