public class GTMObserver implements GTM.TemperatureObserver{ public GTMObserver(GTM gtm){ gtm.observers.add(this); readFailures = 0; } public boolean checkReading(double temp){ readFailures = 0; return (temp<15) || (temp>25); } int readFailures; public void observed(double temp){ System.out.println("Got abnormal: " + temp); }; public void noRead(){ readFailures++; if ( readFailures >= 5){ System.out.println("Failed reading 5 times"); readFailures = 0; } }; }