check NuGet tool is valid
authorEugene Petrenko <eugene.petrenko@gmail.com>
Tue, 16 Aug 2011 05:39:13 +0000 (09:39 +0400)
committerEugene Petrenko <eugene.petrenko@gmail.com>
Tue, 16 Aug 2011 05:39:13 +0000 (09:39 +0400)
nuget-server/src/jetbrains/buildServer/nuget/server/toolRegistry/impl/PluginNaming.java
nuget-server/src/jetbrains/buildServer/nuget/server/toolRegistry/impl/ToolsRegistry.java

index f1e59ae0b438f0014f1aaf615a96be7ac1707997..2df7d48046cb150a3caf1ba99d1da9b54a7c857e 100644 (file)
@@ -38,7 +38,7 @@ public class PluginNaming {
     return "nuget-commnadline-" + version + ".zip";\r
   }\r
 \r
-  public File getAgetToolFilePath(@NotNull NuGetTool tool) {\r
+  public File getAgentToolFilePath(@NotNull NuGetTool tool) {\r
     return new File(myPaths.getAgentPluginsPath(), getAgentToolFileName(tool.getVersion()));\r
   }\r
 \r
index b9c13139bfa90be0bad33837c84528bf2e9e3dfc..5b02885ed4f6d61aa79ccf7e274967693800fed6 100644 (file)
@@ -51,7 +51,17 @@ public class ToolsRegistry {
     if (tools == null) return Collections.emptyList();\r
     final Collection<InstalledTool> result = new ArrayList<InstalledTool>();\r
     for (final File path : tools) {\r
-      result.add(new InstalledTool(path));\r
+      final InstalledTool e = new InstalledTool(path);\r
+      if (!e.getPath().isFile()) {\r
+        LOG.warn("NuGet.exe is not found at " + e);\r
+        continue;\r
+      }\r
+\r
+      if (myNaming.getAgentToolFilePath(e).isFile()) {\r
+        LOG.warn("NuGet tool is not packed for agent. " + e);\r
+        continue;\r
+      }\r
+      result.add(e);\r
     }\r
     return result;\r
   }\r
@@ -61,7 +71,7 @@ public class ToolsRegistry {
       if (tool.getId().equals(toolId)) {\r
         LOG.info("Removing NuGet plugin: " + tool);\r
 \r
-        final File agentPlugin = myNaming.getAgetToolFilePath(tool);\r
+        final File agentPlugin = myNaming.getAgentToolFilePath(tool);\r
         LOG.info("Removing NuGet plugin agent tool : " + agentPlugin);\r
         FileUtil.delete(agentPlugin);\r
 \r
@@ -99,5 +109,12 @@ public class ToolsRegistry {
     public String getVersion() {\r
       return myPath.getName();\r
     }\r
+\r
+    @Override\r
+    public String toString() {\r
+      return "InstalledTool{version=" + getVersion() +\r
+              ", myPath=" + myPath +\r
+              '}';\r
+    }\r
   }\r
 }\r