OSDN Git Service

ソフトコレクションファイル対応(branch list4envtrans)をマージ
[applistation/AppliStation.git] / na-get-lib / NaGet.SubCommands / NaGetTaskSet.cs
index cebd433..df42cd3 100644 (file)
@@ -53,6 +53,10 @@ namespace NaGet.SubCommands
                /// \8dì\8bÆ\82ð\8fI\97¹\r
                /// </summary>\r
                COMPLETED_TASKSET,\r
+               /// <summary>\r
+               /// \93®\8dì\90i\92»\81E\92Ê\92m\82Ì\82Ý\r
+               /// </summary>\r
+               PING,\r
        }\r
        \r
        #endregion\r
@@ -134,10 +138,36 @@ namespace NaGet.SubCommands
                        get;\r
                }\r
                \r
+               /// <summary>\r
+               /// \8c»\8dÝ\82Ì\90i\92»\82ð\96ß\82·\81B\r
+               /// </summary>\r
+               /// <param name="type">\8dì\8bÆ\82Ì\8fó\91Ô</param>\r
+               /// <param name="subTaskProgress">\83T\83u\83^\83X\83N\82Ì\90i\92»</param>\r
+               /// <returns>\8c»\8dÝ\82Ì\90i\92»</returns>\r
+               protected virtual float GetProgressPercent(NaGetTaskSetEventType type, float subTaskProgress)\r
+               {\r
+                       if (CurrentTaskSetIndex >= 0) {\r
+                               if (subTaskProgress >= 0) {\r
+                                       return (CurrentTaskSetIndex * 100 + subTaskProgress) / TaskSetNames.Length;\r
+                               }\r
+                               switch (type) {\r
+                                       case NaGetTaskSetEventType.STARTED:\r
+                                               return 0;\r
+                                       case NaGetTaskSetEventType.COMPLETED:\r
+                                               return 100;\r
+                                       case NaGetTaskSetEventType.COMPLETED_TASKSET:\r
+                                               return ((CurrentTaskSetIndex+1) * 100) / TaskSetNames.Length;\r
+                                       default:\r
+                                               return (CurrentTaskSetIndex * 100) / TaskSetNames.Length;\r
+                               }\r
+                       }\r
+                       \r
+                       return -1;\r
+               }\r
+               \r
                protected virtual void RaiseTaskSetEvent(NaGetTaskSetEventType type, string message)\r
                {\r
-                       float percent = (CurrentTaskSetIndex >= 0)? CurrentTaskSetIndex * 100 / TaskSetNames.Length : -1;\r
-                       RaiseTaskSetEvent(type, message, percent);\r
+                       RaiseTaskSetEvent(type, message, GetProgressPercent(type, -1));\r
                }\r
                \r
                protected virtual void RaiseTaskSetEvent(NaGetTaskSetEventType type, string message, float percent)\r