Skip to content
Snippets Groups Projects
Commit ed72a389 authored by Peter Hertkorn's avatar Peter Hertkorn
Browse files

Add superclass for WetterDaten

parent 73bea2c5
No related branches found
No related tags found
No related merge requests found
......@@ -3,6 +3,7 @@ package wetterstation;
import java.util.Observable;
import java.util.Observer;
public class AktuelleBedingungenAnzeige implements Observer {
private float temperatur;
private float feuchtigkeit;
......@@ -10,13 +11,14 @@ public class AktuelleBedingungenAnzeige implements Observer {
public AktuelleBedingungenAnzeige(WetterDaten wetterDaten) {
this.wetterDaten = wetterDaten;
wetterDaten.addObserver(this);
wetterDaten.addPropertyListener(this);
}
public void update(Observable o, Object arg) {
if (o instanceof WetterDaten) {
this.temperatur = ((WetterDaten) o).getTemperatur();
this.feuchtigkeit = ((WetterDaten) o).getFeuchtigkeit();
if (o instanceof EigenschaftenSubjekt) {
WetterDaten daten = (WetterDaten) arg;
this.temperatur = daten.getTemperatur();
this.feuchtigkeit = daten.getFeuchtigkeit();
anzeigen();
}
}
......
package wetterstation;
import java.util.Observable;
public class EigenschaftenSubjekt extends Observable {
public void firePropertyChange(WetterDaten wetterDaten) {
setChanged();
notifyObservers(wetterDaten);
}
}
package wetterstation;
public abstract class SensorDaten {
}
......@@ -12,12 +12,13 @@ public class StatistikAnzeige implements Observer {
public StatistikAnzeige(WetterDaten wetterDaten) {
this.wetterDaten = wetterDaten;
wetterDaten.addObserver(this);
wetterDaten.addPropertyListener(this);
}
public void update(Observable o, Object arg) {
if (o instanceof WetterDaten) {
float temp = ((WetterDaten) o).getTemperatur();
if (o instanceof EigenschaftenSubjekt) {
WetterDaten daten = (WetterDaten) arg;
float temp = daten.getTemperatur();
tempSum += temp;
anzMesswerte++;
......
......@@ -10,13 +10,14 @@ public class VorhersageAnzeige implements Observer {
public VorhersageAnzeige(WetterDaten wetterDaten) {
this.wetterDaten = wetterDaten;
wetterDaten.addObserver(this);
wetterDaten.addPropertyListener(this);
}
public void update(Observable o, Object arg) {
if (o instanceof WetterDaten) {
if (o instanceof EigenschaftenSubjekt) {
WetterDaten daten = (WetterDaten) arg;
letzterLuftdruck = aktuellerLuftdruck;
aktuellerLuftdruck = ((WetterDaten) o).getLuftdruck();
aktuellerLuftdruck = daten.getLuftdruck();
anzeigen();
}
}
......
package wetterstation;
import java.util.Observable;
import java.util.Observer;
public class WetterDaten extends Observable {
public class WetterDaten extends SensorDaten {
private float temperatur;
private float feuchtigkeit;
private float luftdruck;
private EigenschaftenSubjekt subjekt;
public WetterDaten() {
subjekt = new EigenschaftenSubjekt();
}
public void addPropertyListener(Observer o) {
subjekt.addObserver(o);
}
public void messwerteGeaendert() {
System.out.println(this.toString());
setChanged();
notifyObservers();
subjekt.firePropertyChange(this);
}
public void setMesswerte(float temp, float feucht, float druck) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment