Merge branch 'master' of ssh://plrg.eecs.uci.edu/home/git/smartthings-infrastructure
[smartthings-infrastructure.git] / EnergyMeter / EnergyMeters.groovy
index 553ed86da28e29c33fdd8479a1e1df28f3bb58d1..907ec6680065932c3f48f59e65cbc1e5e660b17f 100644 (file)
@@ -31,10 +31,10 @@ public class EnergyMeters {
 
        //By Model Checker
        def setValue(LinkedHashMap eventDataMap) {
-               if (eventDataMap["value"] != energyMeters[0].energy) {
-                       energyMeters[0].setValue(eventDataMap["value"])
-                       this.energy = energyMeters[0].energy
-                       this.currentEnergy = energyMeters[0].currentEnergy              
+               if (eventDataMap["value"].toInteger() != energyMeters[0].energy) {
+                       this.energy = eventDataMap["value"].toInteger()
+                       this.currentEnergy = eventDataMap["value"].toInteger()
+                       energyMeters[0].setValue(eventDataMap["value"]) 
                        sendEvent(eventDataMap)
                }
        }
@@ -52,6 +52,9 @@ public class EnergyMeters {
        def find(Closure Input) {
                energyMeters.find(Input)
        }
+       def sort(Closure Input) {
+               energyMeters.sort(Input)
+       }
        def collect(Closure Input) {
                energyMeters.collect(Input)
        }
@@ -61,6 +64,10 @@ public class EnergyMeters {
                energyMeters[0].currentValue(deviceFeature)//It is called if we have only one device
        }
 
+       def latestValue(String deviceFeature) {
+               energyMeters[0].latestValue(deviceFeature)//It is called if we have only one device
+       }
+
        def getAt(int ix) {
                energyMeters[ix]
        }