FFM-Friend_Face_Matching/src/main/java/dev/mateuszkowalczyk/ffm/app/WorkspaceService.java

55 lines
2.0 KiB
Java
Raw Normal View History

2020-01-05 15:32:01 +01:00
package dev.mateuszkowalczyk.ffm.app;
2020-01-14 23:34:46 +01:00
import dev.mateuszkowalczyk.ffm.app.cache.CacheService;
import dev.mateuszkowalczyk.ffm.data.DatabaseService;
import dev.mateuszkowalczyk.ffm.data.database.person.Person;
2020-01-12 19:56:44 +01:00
import dev.mateuszkowalczyk.ffm.view.workspace.MainPageController;
2020-01-27 21:29:01 +01:00
import dev.mateuszkowalczyk.ffm.view.workspace.elements.ImageContainerController;
import javafx.application.Platform;
import javafx.scene.image.ImageView;
2020-01-05 15:32:01 +01:00
public class WorkspaceService {
2020-01-05 20:10:44 +01:00
private static final WorkspaceService instance = new WorkspaceService();
private DatabaseService databaseService;
private CacheService cacheService;
2020-01-12 19:56:44 +01:00
private MainPageController mainPageController;
2020-01-27 21:29:01 +01:00
private ImageContainerController imagesContainerController;
2020-01-05 15:32:01 +01:00
2020-01-12 19:56:44 +01:00
private WorkspaceService() {
this.cacheService = CacheService.getInstance();
this.databaseService = DatabaseService.getInstance();
2020-01-12 19:56:44 +01:00
}
2020-01-05 20:10:44 +01:00
public static WorkspaceService getInstance() {
return instance;
}
2020-01-12 19:56:44 +01:00
public MainPageController getMainPageController() {
return mainPageController;
}
public void setMainPageController(MainPageController mainPageController) {
this.mainPageController = mainPageController;
}
public void loadImages(Person person) {
2020-01-27 21:29:01 +01:00
if (imagesContainerController != null) {
Platform.runLater(() -> {this.imagesContainerController.clearImages();});
var workspaceWrapper = WorkspaceWrapper.getInstance();
workspaceWrapper.setPerson(person);
var t = new Thread(workspaceWrapper);
2020-01-27 21:29:01 +01:00
t.start();
} else {
System.out.println("Cannot load images if imagesContainerController isn't exists");
}
2020-01-12 19:56:44 +01:00
}
public void addImage(ImageView element) {
2020-01-27 21:29:01 +01:00
Platform.runLater(() -> this.imagesContainerController.addImage(element));
}
public void setImagesContainerController(ImageContainerController imageContainerController) {
this.imagesContainerController = imageContainerController;
}
2020-01-05 15:32:01 +01:00
}