def find(Closure Input) {
relaySwitches.find(Input)
}
+ def sort(Closure Input) {
+ relaySwitches.sort(Input)
+ }
def collect(Closure Input) {
relaySwitches.collect(Input)
}
//By Apps
def on() {
if (switchState != "on") {
- relaySwitches[0].on()
- switchLatestValue = switchState
+ switchLatestValue = "on"
switchState = "on"
currentSwitch = "on"
+ relaySwitches[0].on()
}
}
def on(LinkedHashMap metaData) {
if (switchState != "on") {
def task = timers.runAfter(metaData["delay"]) {
- relaySwitches[0].on()
- switchLatestValue = switchState
+ switchLatestValue = "on"
switchState = "on"
currentSwitch = "on"
+ relaySwitches[0].on()
}
}
}
def off() {
if (switchState != "off") {
- relaySwitches[0].off()
- switchLatestValue = switchState
+ switchLatestValue = "off"
switchState = "off"
currentSwitch = "off"
+ relaySwitches[0].off()
}
}
def off(LinkedHashMap metaData) {
if (switchState != "off") {
def task = timers.runAfter(metaData["delay"]) {
- relaySwitches[0].off()
- switchLatestValue = switchState
+ switchLatestValue = "off"
switchState = "off"
currentSwitch = "off"
+ relaySwitches[0].off()
}
}
}
//By Model Checker
def setValue(LinkedHashMap eventDataMap) {
if (eventDataMap["value"] != relaySwitches[0].switchState) {
+ this.switchState = eventDataMap["value"]
+ this.switchLatestValue = eventDataMap["value"]
relaySwitches[0].setValue(eventDataMap["value"])
- this.switchState = relaySwitches[0].switchState
- this.switchLatestValue = relaySwitches[0].switchLatestValue
sendEvent(eventDataMap)
}
}