Skip to content
Snippets Groups Projects
Commit 215b079b authored by Tobias Ullerich's avatar Tobias Ullerich
Browse files

Fixed update items: Filter remote versions that are newer then local version

parent 1ad9e202
No related branches found
No related tags found
No related merge requests found
...@@ -5,8 +5,10 @@ import de.thecodelabs.utils.application.ApplicationInfo; ...@@ -5,8 +5,10 @@ import de.thecodelabs.utils.application.ApplicationInfo;
import de.thecodelabs.utils.application.ApplicationUtils; import de.thecodelabs.utils.application.ApplicationUtils;
import de.thecodelabs.utils.threading.Worker; import de.thecodelabs.utils.threading.Worker;
import de.thecodelabs.utils.util.Localization; import de.thecodelabs.utils.util.Localization;
import de.thecodelabs.versionizer.config.Artifact;
import de.thecodelabs.versionizer.model.Version; import de.thecodelabs.versionizer.model.Version;
import de.thecodelabs.versionizer.service.UpdateService; import de.thecodelabs.versionizer.service.UpdateService;
import de.thecodelabs.versionizer.service.VersionTokenizer;
import de.tobias.playpad.PlayPad; import de.tobias.playpad.PlayPad;
import de.tobias.playpad.PlayPadPlugin; import de.tobias.playpad.PlayPadPlugin;
import de.tobias.playpad.Strings; import de.tobias.playpad.Strings;
...@@ -22,6 +24,8 @@ import javafx.fxml.FXML; ...@@ -22,6 +24,8 @@ import javafx.fxml.FXML;
import javafx.scene.control.*; import javafx.scene.control.*;
import java.io.IOException; import java.io.IOException;
import java.util.Map;
import java.util.stream.Collectors;
public class UpdateTabViewController extends GlobalSettingsTabViewController { public class UpdateTabViewController extends GlobalSettingsTabViewController {
...@@ -99,10 +103,16 @@ public class UpdateTabViewController extends GlobalSettingsTabViewController { ...@@ -99,10 +103,16 @@ public class UpdateTabViewController extends GlobalSettingsTabViewController {
// Search for updates // Search for updates
updateService.fetchCurrentVersion(); updateService.fetchCurrentVersion();
// Filter remote versions that are newer then local version
final Map<Artifact, Version> remoteVersions = updateService.getRemoteVersions();
final Map<Artifact, Version> availableUpdates = remoteVersions.entrySet().stream()
.filter(entry -> entry.getValue().isNewerThen(VersionTokenizer.getVersion(entry.getKey())))
.collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue));
Platform.runLater(() -> Platform.runLater(() ->
{ {
openUpdateList.setPlaceholder(placeholderLabel); openUpdateList.setPlaceholder(placeholderLabel);
openUpdateList.getItems().setAll(updateService.getRemoteVersions().values()); openUpdateList.getItems().setAll(availableUpdates.values());
updateButton.setDisable(openUpdateList.getItems().isEmpty()); updateButton.setDisable(openUpdateList.getItems().isEmpty());
}); });
}); });
......
...@@ -18,6 +18,7 @@ class VersionizerSetupTask extends PlayPadInitializeTask { ...@@ -18,6 +18,7 @@ class VersionizerSetupTask extends PlayPadInitializeTask {
val versionizerItem = new VersionizerItem(repository, SystemUtils.getRunPath.toString) val versionizerItem = new VersionizerItem(repository, SystemUtils.getRunPath.toString)
val updateService = UpdateService.startVersionizer(versionizerItem, UpdateService.Strategy.JAR, UpdateService.InteractionType.GUI) val updateService = UpdateService.startVersionizer(versionizerItem, UpdateService.Strategy.JAR, UpdateService.InteractionType.GUI)
updateService.addArtifact(artifact, SystemUtils.getRunPath) updateService.addArtifact(artifact, SystemUtils.getRunPath)
updateService.setRepositoryType(globalSettings.getUpdateChannel) updateService.setRepositoryType(globalSettings.getUpdateChannel)
instance.setUpdateService(updateService) instance.setUpdateService(updateService)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment