Mercurial > hg > tc-symbol-server
comparison agent/src/jetbrains/buildServer/symbols/SymbolsIndexer.java @ 25:f4e0050e2a2f
resolve server url from config parameter
author | Evgeniy.Koshkin |
---|---|
date | Tue, 06 Aug 2013 14:18:09 +0400 |
parents | 7bd8a756aa78 |
children | 87b24e4efcc3 |
comparison
equal
deleted
inserted
replaced
24:9cbdbfed44f4 | 25:f4e0050e2a2f |
---|---|
82 LOG.debug(SymbolsConstants.BUILD_FEATURE_TYPE + " build feature disabled. No indexing performed."); | 82 LOG.debug(SymbolsConstants.BUILD_FEATURE_TYPE + " build feature disabled. No indexing performed."); |
83 return; | 83 return; |
84 } | 84 } |
85 LOG.debug(SymbolsConstants.BUILD_FEATURE_TYPE + " build feature enabled. Searching for suitable files."); | 85 LOG.debug(SymbolsConstants.BUILD_FEATURE_TYPE + " build feature enabled. Searching for suitable files."); |
86 final Collection<File> pdbFiles = getArtifactPathsByFileExtension(artifacts, PDB_FILE_EXTENSION); | 86 final Collection<File> pdbFiles = getArtifactPathsByFileExtension(artifacts, PDB_FILE_EXTENSION); |
87 final SrcSrvStreamProvider srcSrvStreamProvider = new SrcSrvStreamProvider(myBuild.getBuildId(), myBuild.getCheckoutDirectory()); | 87 if(pdbFiles.isEmpty()) return; |
88 final PdbFilePatcher pdbFilePatcher = new PdbFilePatcher(myBuild.getBuildTempDirectory(), srcSrvStreamProvider); | 88 |
89 final FileUrlProvider urlProvider = getUrlProviderForBuild(myBuild, buildLogger); | |
90 if(urlProvider == null) return; | |
91 | |
92 final PdbFilePatcher pdbFilePatcher = new PdbFilePatcher(myBuild.getBuildTempDirectory(), new SrcSrvStreamBuilder(urlProvider)); | |
89 for(File pdbFile : pdbFiles){ | 93 for(File pdbFile : pdbFiles){ |
90 try { | 94 try { |
91 buildLogger.message("Indexing sources appeared in file " + pdbFile.getAbsolutePath()); | 95 buildLogger.message("Indexing sources appeared in file " + pdbFile.getAbsolutePath()); |
92 pdbFilePatcher.patch(pdbFile, buildLogger); | 96 pdbFilePatcher.patch(pdbFile, buildLogger); |
93 mySymbolsToProcess.add(pdbFile); | 97 mySymbolsToProcess.add(pdbFile); |
95 LOG.error("Error occurred while patching symbols file " + pdbFile, e); | 99 LOG.error("Error occurred while patching symbols file " + pdbFile, e); |
96 buildLogger.error("Error occurred while patching symbols file " + pdbFile); | 100 buildLogger.error("Error occurred while patching symbols file " + pdbFile); |
97 buildLogger.exception(e); | 101 buildLogger.exception(e); |
98 } | 102 } |
99 } | 103 } |
104 } | |
105 | |
106 @Nullable | |
107 private FileUrlProvider getUrlProviderForBuild(@NotNull AgentRunningBuild build, BuildProgressLogger buildLogger) { | |
108 String serverUrl = build.getSharedConfigParameters().get(SymbolsConstants.SERVER_URL_PARAMETER_NAME); | |
109 if(serverUrl == null){ | |
110 final String message = String.format("Configuration parameter %s was not set. ", SymbolsConstants.SERVER_URL_PARAMETER_NAME); | |
111 LOG.warn(message); | |
112 buildLogger.warning(message); | |
113 return null; | |
114 } | |
115 return new FileUrlProvider(serverUrl, build.getBuildId(), build.getCheckoutDirectory()); | |
100 } | 116 } |
101 | 117 |
102 private Collection<File> getArtifactPathsByFileExtension(List<ArtifactsCollection> artifactsCollections, String fileExtension){ | 118 private Collection<File> getArtifactPathsByFileExtension(List<ArtifactsCollection> artifactsCollections, String fileExtension){ |
103 final Collection<File> result = new HashSet<File>(); | 119 final Collection<File> result = new HashSet<File>(); |
104 for(ArtifactsCollection artifactsCollection : artifactsCollections){ | 120 for(ArtifactsCollection artifactsCollection : artifactsCollections){ |