«
Rule languages supports Switches
| type | name | label | state |
|---|---|---|---|
| Switch | TestSwitch | Test Switch | <initial_state> |
# Invert all switches
items.select { |item| item.is_a? Switch }
.each { |switch| if switch.off? then switch.on else switch.off end}| initial_state | final_state | |
|---|---|---|
| ON | OFF | |
| OFF | ON |
| type | name | label | state |
|---|---|---|---|
| Switch | TestSwitch | Test Switch | <initial_state> |
TestSwitch << <bool>| initial_state | bool | final_state | |
|---|---|---|---|
| OFF | true | ON | |
| ON | false | OFF |
| type | name | label | state |
|---|---|---|---|
| Switch | TestSwitch | Test Switch | <initial_state> |
# Invert all switches
items.select { |item| item.is_a? Switch }
.each { |switch| switch.toggle }| initial_state | final_state | |
|---|---|---|
| ON | OFF | |
| OFF | ON | |
| UNDEF | ON | |
| NULL | ON |
| type | name | label | state |
|---|---|---|---|
| Switch | TestSwitch | Test Switch | <initial_state> |
# Invert all switches
items.select { |item| item.is_a? Switch }
.each { |switch| switch << !switch }| initial_state | final_state | |
|---|---|---|
| ON | OFF | |
| OFF | ON | |
| NULL | ON | |
| UNDEF | ON |
| type | name | label | state |
|---|---|---|---|
| Switch | TestSwitch | Test Switch | ON |
items.grep(Switch)
.each { |switch| logger.info("Switch #{switch.id} found") }| type | name | label | state |
|---|---|---|---|
| Switch | TestSwitch | Test Switch | ON |
| Switch | TestSwitchTwo | Test Switch Two | OFF |
items.grep(Switch)
.grep(ON)
.each { |switch| logger.info("#{switch.id} ON") }
items.grep(Switch)
.grep(OFF)
.each { |switch| logger.info("#{switch.id} OFF") }| type | name | label | state |
|---|---|---|---|
| Switch | TestSwitch | Test Switch | ON |
| Switch | TestSwitchTwo | Test Switch Two | OFF |
items.grep(Switch)
.each do |switch|
case switch
when ON
logger.info("#{switch.id} ON")
when OFF
logger.info("#{switch.id} OFF")
end
end| type | name | label | state | group |
|---|---|---|---|---|
| Switch | TestSwitch | Test Switch | <initial_state> | Switches |
| Switch | TestSwitchTwo | Test Switch Two | <initial_state> | Switches |
Switches.each(&:<command>)| initial_state | command | final_state | |
|---|---|---|---|
| OFF | on | ON | |
| ON | off | OFF |
| type | name | label | state | group |
|---|---|---|---|---|
| Switch | TestSwitch | Test Switch | <initial_state> | Switches |
| Switch | TestSwitchTwo | Test Switch Two | <initial_state> | Switches |
Switches.select(&:<check>).each(&:<command>)| initial_state | check | command | final_state | |
|---|---|---|---|---|
| OFF | off? | on | ON | |
| ON | on? | off | OFF |