From c884c3b248bcd8fe9f080e61b48a2b282a41c259 Mon Sep 17 00:00:00 2001 From: 0xboobface <0xboobface@gmail.com> Date: Wed, 7 Nov 2018 17:24:20 +0100 Subject: [PATCH] Sped-up inital loading od RecordedModelsTab --- src/main/java/ctbrec/ui/JavaFxModel.java | 4 ---- .../java/ctbrec/ui/RecordedModelsTab.java | 19 ++++++++++--------- 2 files changed, 10 insertions(+), 13 deletions(-) diff --git a/src/main/java/ctbrec/ui/JavaFxModel.java b/src/main/java/ctbrec/ui/JavaFxModel.java index 2a2ece56..9cd8420a 100644 --- a/src/main/java/ctbrec/ui/JavaFxModel.java +++ b/src/main/java/ctbrec/ui/JavaFxModel.java @@ -25,10 +25,6 @@ public class JavaFxModel implements Model { public JavaFxModel(Model delegate) { this.delegate = delegate; - try { - onlineProperty.set(delegate.isOnline()); - pausedProperty.set(delegate.isSuspended()); - } catch (IOException | ExecutionException | InterruptedException e) {} } @Override diff --git a/src/main/java/ctbrec/ui/RecordedModelsTab.java b/src/main/java/ctbrec/ui/RecordedModelsTab.java index 8702603c..3d5dfd37 100644 --- a/src/main/java/ctbrec/ui/RecordedModelsTab.java +++ b/src/main/java/ctbrec/ui/RecordedModelsTab.java @@ -192,18 +192,20 @@ public class RecordedModelsTab extends Tab implements TabSelectionListener { queue.clear(); for (Model model : models) { int index = observableModels.indexOf(model); + final JavaFxModel javaFxModel; if (index == -1) { - observableModels.add(new JavaFxModel(model)); + javaFxModel = new JavaFxModel(model); + observableModels.add(javaFxModel); } else { // make sure to update the JavaFX online property, so that the table cell is updated - JavaFxModel javaFxModel = observableModels.get(index); - threadPool.submit(() -> { - try { - javaFxModel.getOnlineProperty().set(javaFxModel.isOnline()); - javaFxModel.setSuspended(model.isSuspended()); - } catch (IOException | ExecutionException | InterruptedException e) {} - }); + javaFxModel = observableModels.get(index); } + threadPool.submit(() -> { + try { + javaFxModel.getOnlineProperty().set(javaFxModel.isOnline()); + javaFxModel.setSuspended(model.isSuspended()); + } catch (IOException | ExecutionException | InterruptedException e) {} + }); } for (Iterator iterator = observableModels.iterator(); iterator.hasNext();) { Model model = iterator.next(); @@ -211,7 +213,6 @@ public class RecordedModelsTab extends Tab implements TabSelectionListener { iterator.remove(); } } - }); updateService.setOnFailed((event) -> { LOG.info("Couldn't get list of models from recorder", event.getSource().getException());