1   package sensorpoint;
2   
3   import java.util.Collection; 
4   import java.util.Set; 
5   import java.util.Map; 
6   import java.util.HashMap; 
7   import java.util.Iterator; 
8   import java.util.Date; 
9   /**
10   * 183.592 Programmierpraxis TU Wien WS2014/15 H.Moritsch
11   * Punkt mit Sensoren
12   */
13  import point.Point;         // erbt von Point
14  import sensor.Sensor;       // benutzt (nur) abstrakten Sensor
15  public class SensorPoint extends Point implements Sensor {
16  
17      private final String name;  // der Name des Sensors
18      private Date date;          // der Zeitpunkt des letztmaligen Auslesens mittels read()
19      private double value;       // der zuletzt mittels readValue() ausgelesene Wert: 
20  
21      public SensorPoint(double l, double b, double h, String name) {
22          super(l,b,h);
23          this.name = name;
24      }
25  
26      // liefert den Namen    
27      public String getName() {
28          return name;
29      }
30  
31      // Auslesen des Sensors
32      public void read() {
33          date  = new Date();      // aktuelle Zeit speichern
34          value = Math.random()*100.0-50.0;
35      }
36      
37      // liefert den Zeitpunkt des letzten Auslesens
38      public Date getDate() {
39          return date;
40      }
41  
42      // liefert den zuletzt ausgelesenen Wert
43      public double getValue() {
44          return value;
45      }
46  
47      // Formatierung als String
48      public String toString() {
49          return name + " " + super.toString() + ", " + date + ", " + value;
50      }
51  
52  }
53