Mercurial > hg > tc-symbol-server
changeset 78:64eaa82c4529 8.1.x
rename class
author | Evgeniy.Koshkin |
---|---|
date | Tue, 23 Dec 2014 19:37:27 +0300 |
parents | b3f951ab16eb |
children | f86ebe99ad25 |
files | agent/src/jetbrains/buildServer/symbols/SymbolsIndexer.java agent/src/jetbrains/buildServer/symbols/tools/WinDbgToolsDetector.java agent/src/jetbrains/buildServer/symbols/tools/WinDbgToolsHelper.java |
diffstat | 3 files changed, 55 insertions(+), 55 deletions(-) [+] |
line wrap: on
line diff
--- a/agent/src/jetbrains/buildServer/symbols/SymbolsIndexer.java Tue Dec 23 19:02:47 2014 +0300 +++ b/agent/src/jetbrains/buildServer/symbols/SymbolsIndexer.java Tue Dec 23 19:37:27 2014 +0300 @@ -6,7 +6,7 @@ import jetbrains.buildServer.agent.impl.artifacts.ArtifactsCollection; import jetbrains.buildServer.agent.plugins.beans.PluginDescriptor; import jetbrains.buildServer.symbols.tools.JetSymbolsExe; -import jetbrains.buildServer.symbols.tools.WinDbgToolsHelper; +import jetbrains.buildServer.symbols.tools.WinDbgToolsDetector; import jetbrains.buildServer.util.EventDispatcher; import jetbrains.buildServer.util.FileUtil; import org.apache.log4j.Logger; @@ -54,7 +54,7 @@ myProgressLogger = runningBuild.getBuildLogger(); myBuildTempDirectory = runningBuild.getBuildTempDirectory(); - mySrcSrvHomeDir = WinDbgToolsHelper.getSrcSrvHomeDir(runningBuild); + mySrcSrvHomeDir = WinDbgToolsDetector.getSrcSrvHomeDir(runningBuild); if (mySrcSrvHomeDir == null) { LOG.error("Failed to find Source Server tools home directory. No symbol and source indexing will be performed."); myProgressLogger.error("Failed to find Source Server tools home directory. No symbol and source indexing will be performed.");
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/agent/src/jetbrains/buildServer/symbols/tools/WinDbgToolsDetector.java Tue Dec 23 19:37:27 2014 +0300 @@ -0,0 +1,53 @@ +package jetbrains.buildServer.symbols.tools; + +import jetbrains.buildServer.agent.AgentRunningBuild; +import jetbrains.buildServer.dotNet.DotNetConstants; +import jetbrains.buildServer.util.CollectionsUtil; +import jetbrains.buildServer.util.filters.Filter; +import org.apache.log4j.Logger; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.io.File; +import java.util.List; +import java.util.Map; + +/** + * @author Evgeniy.Koshkin + */ +public class WinDbgToolsDetector { + + private static final Logger LOG = Logger.getLogger(WinDbgToolsDetector.class); + + private static final String SRCSRV_HOME_DIR_RELATIVE_X64 = "\\Debuggers\\x64\\srcsrv\\"; + private static final String SRCSRV_HOME_DIR_RELATIVE_X86 = "\\Debuggers\\x86\\srcsrv\\"; + + @Nullable + public static File getSrcSrvHomeDir(@NotNull AgentRunningBuild build) { + final Map<String,String> agentConfigParameters = build.getAgentConfiguration().getConfigurationParameters(); + final List<String> winSdkPathParams = CollectionsUtil.filterCollection(agentConfigParameters.keySet(), new Filter<String>() { + public boolean accept(@NotNull String paramName) { + return paramName.startsWith(DotNetConstants.WINDOWS_SDK) && paramName.endsWith(DotNetConstants.PATH); + } + }); + if(winSdkPathParams.isEmpty()){ + LOG.debug("None of Windows SDK versions are mentioned in agent configuration."); + return null; + } + + for (String paramName : winSdkPathParams){ + final File winSdkHomeDir = new File(agentConfigParameters.get(paramName)); + if(!winSdkHomeDir.exists()) { + LOG.debug(String.format("Windows SDK home directory mentioned in parameter %s is not exist. Checked path %s.", paramName, winSdkHomeDir.getAbsolutePath())); + continue; + } + File dir = new File(winSdkHomeDir, SRCSRV_HOME_DIR_RELATIVE_X64); + if(dir.exists() && dir.isDirectory()) return dir; + dir = new File(winSdkHomeDir, SRCSRV_HOME_DIR_RELATIVE_X86); + if(dir.exists() && dir.isDirectory()) return dir; + LOG.debug("Failed to find Source Server tools home directory under Windows SDK home directory detected on path " + winSdkHomeDir.getAbsolutePath()); + } + LOG.debug("None of detected Windows SDK installations contain Source Server tools."); + return null; + } +}
--- a/agent/src/jetbrains/buildServer/symbols/tools/WinDbgToolsHelper.java Tue Dec 23 19:02:47 2014 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,53 +0,0 @@ -package jetbrains.buildServer.symbols.tools; - -import jetbrains.buildServer.agent.AgentRunningBuild; -import jetbrains.buildServer.dotNet.DotNetConstants; -import jetbrains.buildServer.util.CollectionsUtil; -import jetbrains.buildServer.util.filters.Filter; -import org.apache.log4j.Logger; -import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; - -import java.io.File; -import java.util.List; -import java.util.Map; - -/** - * @author Evgeniy.Koshkin - */ -public class WinDbgToolsHelper { - - private static final Logger LOG = Logger.getLogger(WinDbgToolsHelper.class); - - private static final String SRCSRV_HOME_DIR_RELATIVE_X64 = "\\Debuggers\\x64\\srcsrv\\"; - private static final String SRCSRV_HOME_DIR_RELATIVE_X86 = "\\Debuggers\\x86\\srcsrv\\"; - - @Nullable - public static File getSrcSrvHomeDir(@NotNull AgentRunningBuild build) { - final Map<String,String> agentConfigParameters = build.getAgentConfiguration().getConfigurationParameters(); - final List<String> winSdkPathParams = CollectionsUtil.filterCollection(agentConfigParameters.keySet(), new Filter<String>() { - public boolean accept(@NotNull String paramName) { - return paramName.startsWith(DotNetConstants.WINDOWS_SDK) && paramName.endsWith(DotNetConstants.PATH); - } - }); - if(winSdkPathParams.isEmpty()){ - LOG.debug("None of Windows SDK versions are mentioned in agent configuration."); - return null; - } - - for (String paramName : winSdkPathParams){ - final File winSdkHomeDir = new File(agentConfigParameters.get(paramName)); - if(!winSdkHomeDir.exists()) { - LOG.debug(String.format("Windows SDK home directory mentioned in parameter %s is not exist. Checked path %s.", paramName, winSdkHomeDir.getAbsolutePath())); - continue; - } - File dir = new File(winSdkHomeDir, SRCSRV_HOME_DIR_RELATIVE_X64); - if(dir.exists() && dir.isDirectory()) return dir; - dir = new File(winSdkHomeDir, SRCSRV_HOME_DIR_RELATIVE_X86); - if(dir.exists() && dir.isDirectory()) return dir; - LOG.debug("Failed to find Source Server tools home directory under Windows SDK home directory detected on path " + winSdkHomeDir.getAbsolutePath()); - } - LOG.debug("None of detected Windows SDK installations contain Source Server tools."); - return null; - } -}