Fixing bugs in infra
[smartthings-infrastructure.git] / StepSensor / StepSensors.groovy
1 //Create a class for step sensor
2 package StepSensor
3 import SmartThing.SmartThings
4
5 //Importing mutable integer class
6 import MutableInteger.MutableInteger
7
8 public class StepSensors extends SmartThings {
9         List stepSensors = new ArrayList()
10                 
11         StepSensors(Closure sendEvent, boolean init) {
12                 // Only initialize one time since we only have one device for each capability
13                 stepSensors = smartThings
14
15                 // Initialization
16                 StringBuilder id = new StringBuilder("stepSensorID0")
17                 StringBuilder label = new StringBuilder("stepSensor")
18                 StringBuilder displayName = new StringBuilder("stepSensor0")
19                 MutableInteger steps = new MutableInteger()
20                 MutableInteger goal = new MutableInteger()
21
22                 if (init) {
23                         goal.setValue(50)
24                         steps.setValue(35)
25                 } else {
26                         goal.setValue(40)
27                         steps.setValue(60)
28                 }
29
30                 stepSensors.add(new StepSensor(sendEvent, id, label, displayName, steps, goal))
31         }
32
33         // Methods to return values
34         def getCurrentSteps() {
35                 List tmpValues = new ArrayList()
36                 tmpValues.add(stepSensors[0].getCurrentSteps())
37                 return tmpValues
38         }
39
40         def getCurrentGoal() {
41                 List tmpValues = new ArrayList()
42                 tmpValues.add(stepSensors[0].getCurrentGoal())
43                 return tmpValues
44         }
45 }