\r
package jetbrains.buildServer.nuget.server.toolRegistry.impl;\r
\r
+import com.intellij.openapi.diagnostic.Logger;\r
import jetbrains.buildServer.nuget.server.toolRegistry.NuGetInstalledTool;\r
import jetbrains.buildServer.util.FileUtil;\r
import org.jetbrains.annotations.NotNull;\r
* Date: 16.08.11 0:25\r
*/\r
public class ToolsRegistry {\r
+ private static final Logger LOG = Logger.getInstance(ToolsRegistry.class.getName());\r
private final ToolPaths myPaths;\r
+ private final PluginNaming myNaming;\r
\r
- public ToolsRegistry(@NotNull final ToolPaths paths) {\r
+ public ToolsRegistry(@NotNull final ToolPaths paths,\r
+ @NotNull final PluginNaming naming) {\r
myPaths = paths;\r
+ myNaming = naming;\r
}\r
\r
@NotNull\r
public void removeTool(@NotNull final String toolId) {\r
for (InstalledTool tool : getToolsInternal()) {\r
if (tool.getId().equals(toolId)) {\r
- tool.delete();\r
+ LOG.info("Removing NuGet plugin: " + tool);\r
+\r
+ final File agentPlugin = myNaming.getAgetToolFilePath(tool);\r
+ LOG.info("Removing NuGet plugin agent tool : " + agentPlugin);\r
+ FileUtil.delete(agentPlugin);\r
+\r
+ final File toolHome = tool.getRootPath();\r
+ LOG.info("Removing NuGet files from: " + toolHome);\r
+ FileUtil.delete(toolHome);\r
return;\r
}\r
}\r
myPath = path;\r
}\r
\r
- public void delete() {\r
- while(myPath.exists()) {\r
- FileUtil.delete(myPath);\r
- }\r
+ @NotNull\r
+ public File getRootPath() {\r
+ return myPath;\r
}\r
\r
@NotNull\r
return new File(myPath, "tools/NuGet.exe");\r
}\r
\r
+ @NotNull\r
+ public String getAgentToolName() {\r
+ return "nuget-commandline-" + getVersion() + ".zip";\r
+ }\r
+\r
@NotNull\r
public String getId() {\r
return myPath.getName();\r