in nuget-server/src/jetbrains/buildServer/nuget/server/tool/impl/AvailableOnPackagesNugetOrg.java [40:81]
public FetchAvailableToolsResult fetchAvailable() {
FetchAvailableToolsResult error = null;
for (String feedUrl : Arrays.asList(NUGET_FEED_V2, NUGET_FEED_V1)) {
try {
final Collection<DownloadableToolVersion> fetchedTools = CollectionsUtil.filterAndConvertCollection(
myReader.queryPackageVersions(myFeed, feedUrl, FeedConstants.NUGET_COMMANDLINE),
new Converter<DownloadableToolVersion, NuGetPackage>() {
public DownloadableToolVersion createFrom(@NotNull final NuGetPackage source) {
return new DownloadableNuGetTool(
source.getPackageVersion(),
source.getDownloadUrl(),
source.getPackageId() + "." + source.getPackageVersion() + NUGET_EXTENSION);
}
}, new Filter<NuGetPackage>() {
public boolean accept(@NotNull NuGetPackage data) {
final String[] version = data.getPackageVersion().split("\\.");
if (version.length < 2) return false;
int major = parse(version[0]);
if (major < 1) return false;
int minor = parse(version[1]);
return !(major == 1 && minor < 4);
}
private int parse(String s) {
try {
return Integer.parseInt(s.trim());
} catch (Exception e) {
return -1;
}
}
}
);
return FetchAvailableToolsResult.createSuccessful(fetchedTools);
} catch (IOException e) {
LOG.debug(e);
error = FetchAvailableToolsResult.createError("Failed to fetch versions from: " + feedUrl, e);
}
}
return error;
}