//Create a class for aeon key fob
package AeonKeyFob
-import Timer.SimulatedTimer
+import SmartThing.SmartThing
-public class AeonKeyFob {
- private String id
- private String label
- private String displayName
- private List events = []
- private List timeOfEvents = []
+public class AeonKeyFob extends SmartThing {
+ // id, label, and display name of the device
+ StringBuilder id = new StringBuilder()
+ StringBuilder label = new StringBuilder()
+ StringBuilder displayName = new StringBuilder()
+ // Possible values for eventsSince method
+ List<StringBuilder> possibleValues = new ArrayList<StringBuilder>();
- AeonKeyFob(String id, String label, String displayName) {
+ AeonKeyFob(Closure sendEvent, StringBuilder id, StringBuilder label, StringBuilder displayName) {
+ idSmartThing = id
+ labelSmartThing = label
+ displayNameSmartThing = displayName
+ sendEventSmartThings = sendEvent
+ possibleValuesSmartThings = possibleValues
+
+ // Initialization
this.id = id
this.label = label
this.displayName = displayName
- }
-
- def setValue(LinkedHashMap eventDataMap) {
- def data = eventDataMap["data"]
- def value = eventDataMap["value"]
- println("the button with number $data is $value!")
- this.events.add(eventDataMap)
- this.timeOfEvents.add(System.currentTimeMillis())
- }
-
- def eventsSince(Date dateObj) {
- def List happenedEvents = []
- def sinceThen = dateObj.time
- for (int i = 0;i < timeOfEvents.size();i++) {
- if (timeOfEvents[i]>=sinceThen)
- happenedEvents.add(events[i])
- }
- return happenedEvents
+ possibleValues.add("pushed")
+ possibleValues.add("held")
}
}