You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
TP_JavaFX/src/launcher/Launch.java

70 lines
2.4 KiB

package launcher;
import javafx.application.Application;
import javafx.application.Platform;
import javafx.beans.property.SimpleStringProperty;
import javafx.beans.property.StringProperty;
import javafx.scene.control.TreeItem;
import javafx.stage.Stage;
import model.*;
import view.CapteurView;
import view.ImageCtrlView;
import view.ThermostatView;
import view.TreeViewCtrl;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
public class Launch extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws IOException, InterruptedException {
// Creation des capteurs
UnitCapteur captorC = new UnitCapteur(new SimpleStringProperty("1"),new SimpleStringProperty("Capteur CPU"),new StrategyCPU());
UnitCapteur captorR = new UnitCapteur(new SimpleStringProperty("2"),new SimpleStringProperty("Capteur Random"),new StrategyRandom());
CapteurVirtuel captorV = new CapteurVirtuel(new SimpleStringProperty("3"),new SimpleStringProperty("Capteur Virtuel"));
// Ajout des capteurs dans la collections du capteur virtuel
captorV.addCapteur(captorC,1);
captorV.addCapteur(captorR,1);
for (Map.Entry<CapteurAbstrait, Integer> entry : captorV.getCapteurs().entrySet()) {
CapteurAbstrait c = entry.getKey();
c.genTemp();
}
captorV.genTemp();
ArrayList<CapteurAbstrait> capteurs = new ArrayList<>();
capteurs.add(captorC);
capteurs.add(captorR);
capteurs.add(captorV);
Stage thermostatStage = new Stage();
TreeViewCtrl treeViewCtrl = new TreeViewCtrl(capteurs,"view/TreeView.fxml","treeView");
Thread t = new Thread() {
public void run() {
while (true) {
Platform.runLater(() -> {
capteurs.forEach(c -> {
if(c instanceof UnitCapteur uc){
uc.genTemp();
}
});
});
try {
sleep(1000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}
}
};
t.start();
treeViewCtrl.show();
}
}