}\r
}\r
}\r
+ \r
+ public static NaGetTaskQueryResult OnTaskQueryEvent(object sender, NaGetTaskQueryArgs e)\r
+ {\r
+ char result = '\u0000';\r
+ if (e.SelectionFlag == (NaGetTaskQueryResult.CONTINUE | NaGetTaskQueryResult.RETRY | NaGetTaskQueryResult.CANCEL)) {\r
+ result = AllGet.Util.Query(e.Message + " [y/R/n]?", "yrn", 'r');\r
+ } else if (e.SelectionFlag == (NaGetTaskQueryResult.RETRY | NaGetTaskQueryResult.CANCEL)) {\r
+ result = AllGet.Util.Query(e.Message + " [R/n]?", "rn", 'r');\r
+ } else if (e.SelectionFlag == NaGetTaskQueryResult.CONTINUE) {\r
+ result = AllGet.Util.Query(e.Message + " [Y]?", "y", 'y');\r
+ } else {\r
+ result = AllGet.Util.Query(e.Message + " [Y/n]?", "yn", 'y');\r
+ }\r
+ \r
+ switch (result) {\r
+ case 'y':\r
+ return NaGetTaskQueryResult.CONTINUE;\r
+ case 'n':\r
+ return NaGetTaskQueryResult.CANCEL;\r
+ case 'r':\r
+ return NaGetTaskQueryResult.RETRY;\r
+ default:\r
+ return NaGetTaskQueryResult.CANCELED_AUTOMATICALLY;\r
+ }\r
+ }\r
}\r
\r
\r
}\r
}\r
\r
+ \r
public void Download(string[] packagenames)\r
{\r
Installation[] installations = null;\r
Environment.Exit(0);\r
}\r
\r
- NaGet.SubCommands.NaGetDownloadToCache tasks = new NaGet.SubCommands.NaGetDownloadToCache(pkgListMan, installations);\r
- tasks.TaskQueryRaised += delegate(object sender, NaGetTaskQueryArgs e) {\r
- char result = '\u0000';\r
- if (e.SelectionFlag == (NaGetTaskQueryResult.CONTINUE | NaGetTaskQueryResult.RETRY | NaGetTaskQueryResult.CANCEL)) {\r
- result = AllGet.Util.Query(e.Message + " [y/R/n]?", "yrn", 'r');\r
- } else if (e.SelectionFlag == (NaGetTaskQueryResult.RETRY | NaGetTaskQueryResult.CANCEL)) {\r
- result = AllGet.Util.Query(e.Message + " [R/n]?", "rn", 'r');\r
- } else if (e.SelectionFlag == NaGetTaskQueryResult.CONTINUE) {\r
- result = AllGet.Util.Query(e.Message + " [Y]?", "y", 'y');\r
- } else {\r
- result = AllGet.Util.Query(e.Message + " [Y/n]?", "yn", 'y');\r
- }\r
- \r
- switch (result) {\r
- case 'y':\r
- return NaGetTaskQueryResult.CONTINUE;\r
- case 'n':\r
- return NaGetTaskQueryResult.CANCEL;\r
- case 'r':\r
- return NaGetTaskQueryResult.RETRY;\r
- default:\r
- return NaGetTaskQueryResult.CANCELED_AUTOMATICALLY;\r
- }\r
- };\r
- tasks.TaskEventRaised += delegate(object sender, TaskEventArgs e) { \r
- switch (e.Type) {\r
-// case NaGetTaskSetEventType.COMPLETED_TASKSET\r
-// break;\r
- case TaskEventType.COMPLETED:\r
- Console.WriteLine("Done.");\r
- break;\r
- case TaskEventType.STARTED_SUBTASK:\r
- Console.Write(" " + e.TaskMessage);\r
- break;\r
- case TaskEventType.COMPLETED_SUBTASK:\r
- Console.WriteLine(" ... Done. [{0}%]", (int) e.ProgressPercent);\r
- break;\r
- case TaskEventType.INFO:\r
- Console.WriteLine(" " + e.TaskMessage);\r
- break;\r
- case TaskEventType.ERROR:\r
- case TaskEventType.WARNING:\r
- Console.WriteLine(" [Error] " + e.TaskMessage);\r
- break;\r
- }\r
- };\r
- DownloadListener dl = new DownloadListener();\r
- tasks.Downloader.DownloadEventRaised += dl.OnDownload;\r
+ NaGet.SubCommands.NaGetDownloadToCache2 tasks = new NaGet.SubCommands.NaGetDownloadToCache2(pkgListMan, installations);\r
+ tasks.TaskEventRaised += TaskSetEventHandlers.OnTaskSetEvent;\r
+ tasks.SubTaskEventRaised += TaskSetEventHandlers.OnDownloadSubTaskEvent;\r
+ tasks.TaskQueryRaised += TaskSetEventHandlers.OnTaskQueryEvent;\r
\r
tasks.Run();\r
}\r