openhab-scripting 5.18.0 → 5.19.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/openhab/core/dto/item_channel_link.rb +5 -0
- data/lib/openhab/core/items/item.rb +2 -2
- data/lib/openhab/core/items/item_channel_links.rb +8 -4
- data/lib/openhab/core/items/persistence.rb +437 -150
- data/lib/openhab/core/things/channel.rb +120 -0
- data/lib/openhab/core/things/links/provider.rb +2 -1
- data/lib/openhab/dsl/rules/builder.rb +54 -26
- data/lib/openhab/dsl/rules/terse.rb +21 -16
- data/lib/openhab/dsl/version.rb +1 -1
- data/lib/openhab/rspec/mocks/persistence_service.rb +10 -5
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 806939292f4f749b0fd1db95f1b99a35365f8de972e96b90bb824a217f151743
|
4
|
+
data.tar.gz: 783bd04b6bcb2d6fedef08d69aecb150f3578a9a6a011015b968cb4614949263
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 11e236b0c0c642d154e0340ce1330311fcaec8f60c180af58ec4bfc2fd013a2de64d54ae327316b90bf565f5255c76c1f3d810595225d9c8b22ff40c8fb12e7b
|
7
|
+
data.tar.gz: 47d995352bb04ced923551adcf16f7022823b2cf4e2aed9d758be688fa9a75cc40b0778700e2e0e04f15e8092453ae2c0323565de9dc73047faaeff37d0bd397
|
@@ -288,7 +288,7 @@ module OpenHAB
|
|
288
288
|
end
|
289
289
|
|
290
290
|
# @!attribute channel [r]
|
291
|
-
# Return the
|
291
|
+
# Return the channel this item is linked to. If an item is linked to more than one channel,
|
292
292
|
# this method only returns the first channel.
|
293
293
|
#
|
294
294
|
# @return [Things::Channel, nil]
|
@@ -320,7 +320,7 @@ module OpenHAB
|
|
320
320
|
# @see unlink
|
321
321
|
#
|
322
322
|
def links
|
323
|
-
ItemChannelLinks.new(
|
323
|
+
ItemChannelLinks.new(name, Things::Links::Provider.registry.get_links(name))
|
324
324
|
end
|
325
325
|
|
326
326
|
#
|
@@ -12,13 +12,13 @@ module OpenHAB
|
|
12
12
|
#
|
13
13
|
class ItemChannelLinks < SimpleDelegator
|
14
14
|
#
|
15
|
-
# @param [
|
15
|
+
# @param [String, UID] owner The owner that the links belong to
|
16
16
|
# @param [Set<ItemChannelLink>] links The set of links to delegate to
|
17
17
|
#
|
18
18
|
# @!visibility private
|
19
|
-
def initialize(
|
19
|
+
def initialize(owner, links)
|
20
20
|
super(links)
|
21
|
-
@
|
21
|
+
@owner = owner
|
22
22
|
end
|
23
23
|
|
24
24
|
#
|
@@ -27,7 +27,11 @@ module OpenHAB
|
|
27
27
|
#
|
28
28
|
def clear
|
29
29
|
Things::Links::Provider.registry.all.each do |link|
|
30
|
-
|
30
|
+
if @owner.is_a?(String)
|
31
|
+
next unless link.item_name == @owner
|
32
|
+
else
|
33
|
+
next unless link.linked_uid == @owner
|
34
|
+
end
|
31
35
|
|
32
36
|
provider = Things::Links::Provider.registry.provider_for(link.uid)
|
33
37
|
if provider.is_a?(ManagedProvider)
|