diff --git a/WeatherStation/src/launch/Launch.java b/WeatherStation/src/launch/Launch.java index 278eb17..01b60b4 100644 --- a/WeatherStation/src/launch/Launch.java +++ b/WeatherStation/src/launch/Launch.java @@ -4,6 +4,7 @@ import javafx.application.Application; import javafx.stage.Stage; import modele.ConcreteSensor; import modele.Sensor; +import modele.SensorManager; import modele.VirtualSensor; import views.WeatherController; @@ -14,15 +15,17 @@ public class Launch extends Application { @Override public void start(Stage primaryStage) throws Exception { //Create captors here - List sensorsList = new ArrayList<>(); + SensorManager.getInstance(); + VirtualSensor virtualSensor = new VirtualSensor(new ArrayList<>(), 0, "testmachin", 54); ConcreteSensor concreteSensor1 = new ConcreteSensor(3); ConcreteSensor concreteSensor2 = new ConcreteSensor(78); virtualSensor.addSensor(concreteSensor1,concreteSensor1.getWeight()); virtualSensor.addSensor(concreteSensor2,concreteSensor2.getWeight()); - sensorsList.add(virtualSensor); - WeatherController weatherController = new WeatherController(sensorsList,"FXML/WeatherStation.fxml","WeatherStation"); + SensorManager.getInstance().addSensor(virtualSensor); + + WeatherController weatherController = new WeatherController(SensorManager.getInstance().getSensorList(), "FXML/WeatherStation.fxml","WeatherStation"); } } diff --git a/WeatherStation/src/modele/SensorManager.java b/WeatherStation/src/modele/SensorManager.java new file mode 100644 index 0000000..7543012 --- /dev/null +++ b/WeatherStation/src/modele/SensorManager.java @@ -0,0 +1,30 @@ +package modele; + +import java.util.ArrayList; +import java.util.List; + +public class SensorManager { + private static SensorManager instance; + + private List sensorList; + + private SensorManager() { + sensorList = new ArrayList<>(); + } + + public static SensorManager getInstance() { + if (instance == null) { + instance = new SensorManager(); + } + return instance; + } + + public void addSensor(Sensor sensor) { + sensorList.add(sensor); + } + + public List getSensorList() { + return sensorList; + } +} + diff --git a/WeatherStation/src/views/WeatherController.java b/WeatherStation/src/views/WeatherController.java index 2945c29..8d32565 100644 --- a/WeatherStation/src/views/WeatherController.java +++ b/WeatherStation/src/views/WeatherController.java @@ -4,6 +4,7 @@ import javafx.fxml.FXML; import javafx.scene.control.*; import modele.ConcreteSensor; import modele.Sensor; +import modele.SensorManager; import modele.VirtualSensor; import java.io.IOException; @@ -35,11 +36,10 @@ public class WeatherController extends FXMLWindow { root.getChildren().add(sensorItem); } - - + this.initializeSensor(); } - public void initialize(){ + public void initializeSensor(){ //------------------------------------------------------------------------------------------------------ sensor = new ConcreteSensor(56); @@ -50,7 +50,8 @@ public class WeatherController extends FXMLWindow { if (empty) { setText(null); } else { - textProperty().bindBidirectional(item.getName()); + // setText(item.getName().getValue().toString()); + textProperty().bindBidirectional(item.getName()); } } }); diff --git a/out/production/WeatherStation/views/WeatherController$1.class b/out/production/WeatherStation/views/WeatherController$1.class index 4778053..6d02f91 100644 Binary files a/out/production/WeatherStation/views/WeatherController$1.class and b/out/production/WeatherStation/views/WeatherController$1.class differ diff --git a/out/production/WeatherStation/views/WeatherController.class b/out/production/WeatherStation/views/WeatherController.class index ffbd92f..eed7e3d 100644 Binary files a/out/production/WeatherStation/views/WeatherController.class and b/out/production/WeatherStation/views/WeatherController.class differ