From 041f038b70338e72feb83cc30a04988f68d249e3 Mon Sep 17 00:00:00 2001 From: "nicolas.franco" Date: Sat, 21 Jan 2023 11:32:08 +0100 Subject: [PATCH] visiteur et TreeItemViewFactoryVisitor implemented --- src/model/StrategyCPU.java | 4 ++-- src/model/TreeItemFactoryVisitor.java | 24 ++++++++++++++++++++++++ src/model/UnitCapteur.java | 4 ++++ src/model/Visitor.java | 6 ++++++ 4 files changed, 36 insertions(+), 2 deletions(-) create mode 100644 src/model/TreeItemFactoryVisitor.java create mode 100644 src/model/Visitor.java diff --git a/src/model/StrategyCPU.java b/src/model/StrategyCPU.java index 9d7b1a8..67d7d9c 100644 --- a/src/model/StrategyCPU.java +++ b/src/model/StrategyCPU.java @@ -11,8 +11,8 @@ public class StrategyCPU implements StrategyCaptor { public void genTemp(CapteurAbstrait c) { try{ String temp = new String(Files.readAllBytes(Paths.get("/sys/class/thermal/thermal_zone0/temp"))); - double tempClesius = Double.parseDouble(temp)/1000.0; - c.setTemp(tempClesius); + double tempCelsius = Double.parseDouble(temp)/1000.0; + c.setTemp(tempCelsius); } catch (IOException e) { throw new RuntimeException(e); } diff --git a/src/model/TreeItemFactoryVisitor.java b/src/model/TreeItemFactoryVisitor.java new file mode 100644 index 0000000..9700a59 --- /dev/null +++ b/src/model/TreeItemFactoryVisitor.java @@ -0,0 +1,24 @@ +package model; + +import com.sun.source.tree.Tree; +import javafx.scene.control.TreeItem; + +public class TreeItemFactoryVisitor implements Visitor>{ + @Override + public TreeItem visit(UnitCapteur c) { + return new TreeItem<>(c); + } + + @Override + public TreeItem visit(CapteurVirtuel cv) { + TreeItem root = new TreeItem<>(cv); + root.setExpanded(true); + + for(CapteurAbstrait c : cv.getCapteurs().keySet()){ + TreeItem item = new TreeItem<>(); + root.getChildren().add(item); + } + + return root; + } +} diff --git a/src/model/UnitCapteur.java b/src/model/UnitCapteur.java index 3b0fa36..c72c464 100644 --- a/src/model/UnitCapteur.java +++ b/src/model/UnitCapteur.java @@ -7,4 +7,8 @@ public class UnitCapteur extends CapteurAbstrait{ super(id, nom); this.strategie = st; } + + public void contexte(){ + this.strategie.genTemp(this); + } } diff --git a/src/model/Visitor.java b/src/model/Visitor.java new file mode 100644 index 0000000..dcaec9b --- /dev/null +++ b/src/model/Visitor.java @@ -0,0 +1,6 @@ +package model; + +public interface Visitor { + public T visit(UnitCapteur c); + public T visit(CapteurVirtuel cv); +}