forked from j62/ctbrec
1
0
Fork 0

Code cleanup

This commit is contained in:
0xb00bface 2021-12-24 16:37:49 +01:00
parent df691e1d48
commit 3a6fe58a0c
3 changed files with 27 additions and 37 deletions

View File

@ -88,7 +88,7 @@ public abstract class AbstractRecordedModelsTab extends Tab implements TabSelect
protected Button checkModelAccountExistance = new Button("Check URLs"); protected Button checkModelAccountExistance = new Button("Check URLs");
protected Button exportModelsButton = new Button(); protected Button exportModelsButton = new Button();
protected Button importModelsButton = new Button(); protected Button importModelsButton = new Button();
protected TextField filter; protected TextField filterTextField;
protected FlowPane grid = new FlowPane(); protected FlowPane grid = new FlowPane();
protected ScrollPane scrollPane = new ScrollPane(); protected ScrollPane scrollPane = new ScrollPane();
@ -200,12 +200,12 @@ public abstract class AbstractRecordedModelsTab extends Tab implements TabSelect
filterContainer.minWidth(100); filterContainer.minWidth(100);
filterContainer.prefWidth(150); filterContainer.prefWidth(150);
HBox.setHgrow(filterContainer, Priority.ALWAYS); HBox.setHgrow(filterContainer, Priority.ALWAYS);
filter = new SearchBox(false); filterTextField = new SearchBox(false);
filter.minWidth(100); filterTextField.minWidth(100);
filter.prefWidth(150); filterTextField.prefWidth(150);
filter.setPromptText("Filter"); filterTextField.setPromptText("Filter");
filter.textProperty().addListener((observableValue, oldValue, newValue) -> { filterTextField.textProperty().addListener((observableValue, oldValue, newValue) -> {
String q = filter.getText(); String q = filterTextField.getText();
lock.lock(); lock.lock();
try { try {
filter(q); filter(q);
@ -213,9 +213,9 @@ public abstract class AbstractRecordedModelsTab extends Tab implements TabSelect
lock.unlock(); lock.unlock();
} }
}); });
filter.getStyleClass().remove("search-box-icon"); filterTextField.getStyleClass().remove("search-box-icon");
filterContainer.getChildren().addAll(filter); filterContainer.getChildren().addAll(filterTextField);
addModelBox.getChildren().add(filterContainer); addModelBox.getChildren().add(filterContainer);
} }

View File

@ -20,15 +20,11 @@ import javafx.util.Duration;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import java.io.IOException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.util.Iterator;
import java.util.List; import java.util.List;
import java.util.concurrent.ExecutorService; import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors; import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors; import java.util.function.Predicate;
public class RecordLaterTab extends AbstractRecordedModelsTab implements TabSelectionListener { public class RecordLaterTab extends AbstractRecordedModelsTab implements TabSelectionListener {
private static final Logger LOG = LoggerFactory.getLogger(RecordLaterTab.class); private static final Logger LOG = LoggerFactory.getLogger(RecordLaterTab.class);
@ -91,18 +87,13 @@ public class RecordLaterTab extends AbstractRecordedModelsTab implements TabSele
addOrUpdateModels(updatedModels); addOrUpdateModels(updatedModels);
// remove old ones, which are not in the list of updated models // remove old ones, which are not in the list of updated models
for (Iterator<JavaFxModel> iterator = observableModels.iterator(); iterator.hasNext();) { observableModels.removeIf(Predicate.not(updatedModels::contains));
Model oldModel = iterator.next();
if (!updatedModels.contains(oldModel)) {
iterator.remove();
}
}
} finally { } finally {
lock.unlock(); lock.unlock();
} }
filteredModels.clear(); filteredModels.clear();
filter(filter.getText()); filter(filterTextField.getText());
table.sort(); table.sort();
table.refresh(); table.refresh();
} }
@ -125,14 +116,14 @@ public class RecordLaterTab extends AbstractRecordedModelsTab implements TabSele
} }
private ScheduledService<List<JavaFxModel>> createUpdateService() { private ScheduledService<List<JavaFxModel>> createUpdateService() {
ScheduledService<List<JavaFxModel>> modelUpdateService = new ScheduledService<List<JavaFxModel>>() { ScheduledService<List<JavaFxModel>> modelUpdateService = new ScheduledService<>() {
@Override @Override
protected Task<List<JavaFxModel>> createTask() { protected Task<List<JavaFxModel>> createTask() {
return new Task<List<JavaFxModel>>() { return new Task<>() {
@Override @Override
public List<JavaFxModel> call() throws InvalidKeyException, NoSuchAlgorithmException, IOException { public List<JavaFxModel> call() {
LOG.trace("Updating models marked for later recording"); LOG.trace("Updating models marked for later recording");
return recorder.getModels().stream().filter(Model::isMarkedForLaterRecording).map(JavaFxModel::new).collect(Collectors.toList()); return recorder.getModels().stream().filter(Model::isMarkedForLaterRecording).map(JavaFxModel::new).toList();
} }
}; };
} }
@ -172,13 +163,13 @@ public class RecordLaterTab extends AbstractRecordedModelsTab implements TabSele
confirmed = Dialogs.showConfirmDialog("Remove From List", "Continue?", header, table.getScene()); confirmed = Dialogs.showConfirmDialog("Remove From List", "Continue?", header, table.getScene());
} }
if (confirmed) { if (confirmed) {
List<Model> models = selectedModels.stream().map(JavaFxModel::getDelegate).collect(Collectors.toList()); List<Model> models = selectedModels.stream().map(JavaFxModel::getDelegate).toList();
new StopRecordingAction(getTabPane(), models, recorder).execute().whenComplete((r, ex) -> { new StopRecordingAction(getTabPane(), models, recorder).execute().whenComplete((r, ex) ->
r.stream().map(Result::getModel).forEach(m -> Platform.runLater(() -> { r.stream().map(Result::getModel).forEach(m -> Platform.runLater(() -> {
table.getSelectionModel().clearSelection(table.getItems().indexOf(m)); table.getSelectionModel().clearSelection(table.getItems().indexOf(m));
table.getItems().remove(m); table.getItems().remove(m);
})); }))
}); );
portraitCache.invalidateAll(models); portraitCache.invalidateAll(models);
} }
} }

View File

@ -45,7 +45,6 @@ import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors; import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import java.util.function.Predicate; import java.util.function.Predicate;
import java.util.stream.Collectors;
import static ctbrec.Recording.State.RECORDING; import static ctbrec.Recording.State.RECORDING;
@ -202,7 +201,7 @@ public class RecordedModelsTab extends AbstractRecordedModelsTab implements TabS
protected void pauseAll(ActionEvent evt) { protected void pauseAll(ActionEvent evt) {
boolean yes = Dialogs.showConfirmDialog("Pause all models", "", "Pause the recording of all models?", getTabPane().getScene()); boolean yes = Dialogs.showConfirmDialog("Pause all models", "", "Pause the recording of all models?", getTabPane().getScene());
if (yes) { if (yes) {
List<Model> models = recorder.getModels().stream().filter(Predicate.not(Model::isMarkedForLaterRecording)).collect(Collectors.toList()); List<Model> models = recorder.getModels().stream().filter(Predicate.not(Model::isMarkedForLaterRecording)).toList();
new PauseAction(getTabPane(), models, recorder).execute(); new PauseAction(getTabPane(), models, recorder).execute();
} }
} }
@ -210,7 +209,7 @@ public class RecordedModelsTab extends AbstractRecordedModelsTab implements TabS
protected void resumeAll(ActionEvent evt) { protected void resumeAll(ActionEvent evt) {
boolean yes = Dialogs.showConfirmDialog("Resume all models", "", "Resume the recording of all models?", getTabPane().getScene()); boolean yes = Dialogs.showConfirmDialog("Resume all models", "", "Resume the recording of all models?", getTabPane().getScene());
if (yes) { if (yes) {
List<Model> models = recorder.getModels().stream().filter(Predicate.not(Model::isMarkedForLaterRecording)).collect(Collectors.toList()); List<Model> models = recorder.getModels().stream().filter(Predicate.not(Model::isMarkedForLaterRecording)).toList();
new ResumeAction(getTabPane(), models, recorder).execute(); new ResumeAction(getTabPane(), models, recorder).execute();
} }
} }
@ -247,7 +246,7 @@ public class RecordedModelsTab extends AbstractRecordedModelsTab implements TabS
} }
filteredModels.clear(); filteredModels.clear();
filter(filter.getText()); filter(filterTextField.getText());
table.sort(); table.sort();
table.refresh(); table.refresh();
} }
@ -310,7 +309,7 @@ public class RecordedModelsTab extends AbstractRecordedModelsTab implements TabS
break; break;
} }
} }
}).collect(Collectors.toList()); }).toList();
} }
}; };
} }
@ -350,7 +349,7 @@ public class RecordedModelsTab extends AbstractRecordedModelsTab implements TabS
confirmed = Dialogs.showConfirmDialog("Stop Recording", "Continue?", header, table.getScene()); confirmed = Dialogs.showConfirmDialog("Stop Recording", "Continue?", header, table.getScene());
} }
if (confirmed) { if (confirmed) {
List<Model> models = selectedModels.stream().map(JavaFxModel::getDelegate).collect(Collectors.toList()); List<Model> models = selectedModels.stream().map(JavaFxModel::getDelegate).toList();
new StopRecordingAction(getTabPane(), models, recorder).execute().whenComplete((r, ex) -> new StopRecordingAction(getTabPane(), models, recorder).execute().whenComplete((r, ex) ->
r.stream().map(Result::getModel).forEach(m -> Platform.runLater(() -> { r.stream().map(Result::getModel).forEach(m -> Platform.runLater(() -> {
table.getSelectionModel().clearSelection(table.getItems().indexOf(m)); table.getSelectionModel().clearSelection(table.getItems().indexOf(m));
@ -362,12 +361,12 @@ public class RecordedModelsTab extends AbstractRecordedModelsTab implements TabS
} }
private void pauseRecording(List<JavaFxModel> selectedModels) { private void pauseRecording(List<JavaFxModel> selectedModels) {
List<Model> models = selectedModels.stream().map(JavaFxModel::getDelegate).collect(Collectors.toList()); List<Model> models = selectedModels.stream().map(JavaFxModel::getDelegate).toList();
new PauseAction(getTabPane(), models, recorder).execute(); new PauseAction(getTabPane(), models, recorder).execute();
} }
private void resumeRecording(List<JavaFxModel> selectedModels) { private void resumeRecording(List<JavaFxModel> selectedModels) {
List<Model> models = selectedModels.stream().map(JavaFxModel::getDelegate).collect(Collectors.toList()); List<Model> models = selectedModels.stream().map(JavaFxModel::getDelegate).toList();
new ResumeAction(getTabPane(), models, recorder).execute(); new ResumeAction(getTabPane(), models, recorder).execute();
} }