Changes in classes: new concept for latest value + all types of events generated...
[smartthings-infrastructure.git] / EnergyMeter / EnergyMeter.groovy
1 //Create a class for energy meter
2 package EnergyMeter
3 import Timer.SimulatedTimer
4
5 public class EnergyMeter {
6         private String id
7         private String label
8         private String displayName
9         private int energy
10         private int currentEnergy
11
12         EnergyMeter(String id, String label, String displayName, int energy) {
13                 this.id = id
14                 this.label = label
15                 this.displayName = displayName
16                 this.energy = energy
17         }
18
19         //By Model Checker
20         def setValue(String value) {
21                 println("the enery is changed to $value!")
22                 this.energy = value.toInteger()
23                 this.currentEnergy = value.toInteger()
24         }
25
26         def currentValue(String deviceFeature) {
27                 if (deviceFeature == "energy") {
28                         return energy
29                 }
30         }
31
32         def latestValue(String deviceFeature) {
33                 if (deviceFeature == "energy") {
34                         return energy
35                 }
36         }
37 }