65fca9cdc8a949d904ae9f5eb31fd5fe0e00bbf0
[smartthings-infrastructure.git] / TemperatureMeasurement / TemperatureMeasurement.groovy
1 //Create a class for temperature measurement
2 package TemperatureMeasurement
3 import SmartThing.SmartThing
4
5 public class TemperatureMeasurement extends SmartThing {
6         // id, label, and display name of the device
7         StringBuilder id = new StringBuilder()
8         StringBuilder label = new StringBuilder()
9         StringBuilder displayName = new StringBuilder()
10         // Features with numberical values
11         MutableInteger currentTemperature = new MutableInteger()
12         // Maps from features to values
13         HashMap<String, MutableInteger> deviceIntValuesMap = new HashMap<String, MutableInteger>()
14
15         TemperatureMeasurement(Closure sendEvent, StringBuilder id, StringBuilder label, StringBuilder displayName, MutableInteger currentTemperature) {
16                 deviceIntValuesMap = deviceIntValueSmartThing
17                 idSmartThing = id
18                 labelSmartThing = label
19                 displayNameSmartThing = displayName
20                 sendEventSmartThings = sendEvent
21
22                 // Initialization
23                 this.id = id
24                 this.label = label
25                 this.displayName = displayName
26                 this.currentTemperature = currentTemperature
27
28                 deviceIntValuesMap.put("temperature", currentTemperature)
29         }
30
31         // Methods to return values
32         def getCurrentTemperature() {
33                 return currentTemperature.getValue()
34         }
35
36 }