1
0
mirror of https://github.com/arduino/Arduino.git synced 2025-03-13 10:29:35 +01:00

Fixed LibrariesIndex.getInstalled(..) method

This commit is contained in:
Cristian Maglie 2018-01-22 13:01:59 +01:00
parent 86441e4341
commit 62882e0a4d

View File

@ -30,6 +30,7 @@
package cc.arduino.contributions.libraries;
import cc.arduino.contributions.DownloadableContributionBuiltInAtTheBottomComparator;
import cc.arduino.contributions.VersionComparator;
import cc.arduino.contributions.libraries.filters.LibraryWithNamePredicate;
import java.util.*;
@ -91,13 +92,14 @@ public abstract class LibrariesIndex {
}
public Optional<ContributedLibrary> getInstalled(String name) {
List<ContributedLibrary> installedReleases = find(name).stream().filter(l -> l.isLibraryInstalled()).collect(Collectors.toList());
Collections.sort(installedReleases, new DownloadableContributionBuiltInAtTheBottomComparator());
if (installedReleases.isEmpty()) {
return Optional.empty();
}
return Optional.of(installedReleases.get(0));
return find(name).stream() //
.filter(l -> l.isLibraryInstalled()) //
.reduce((x, y) -> {
if (x.isIDEBuiltIn() == y.isIDEBuiltIn()) {
return VersionComparator.max(x, y);
} else {
return x.isIDEBuiltIn() ? y : x;
}
});
}
}