openhab-scripting 4.12.1 → 4.13.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f6e235cb755ab3a382e6c26092492655347aeb90fb93b4449c64c7ae78b084ba
4
- data.tar.gz: 6c595a32a957415cee2e0588bc1dd044f797c9b9c678ea4c130ac37f80d72f0b
3
+ metadata.gz: d8553ce88b82dd93b0b7765705c02bd395d60e73e8fba7d61c4eaac617f7b78c
4
+ data.tar.gz: 1a31fb278828c5e2d487baba5836b171ffbc24cb8617c707f3da6afe9acbe526
5
5
  SHA512:
6
- metadata.gz: 7641e9056c5a0b2d4e004a585bfddf5fb4c51f4228f3df9dacea2b4af3efcb7a48ca0a38214d92a6571bf5de481dae49a7c62582f917a2226d211b8070ffeac6
7
- data.tar.gz: 7cd6598c839a75c773b92000660663f2abcee197a128b66323cdcfbd3c0ca887d813fcee0eb207e112e0e19d502919ec938e822fcf8543edcd1d481edd682bfc
6
+ metadata.gz: c5bcf4d62caa96ad2160baaef8c05811f0ab423113547e5bab7455553f6e60db45da3ad12312e882eb1627e4e09529acc71b3e9d04e8a2063df17c4717d71a16
7
+ data.tar.gz: ccc18e9cabf4e3d4f2f690c15f6bb58690819ff226f7ddc55422779bc33e2b4d08d4434ec33df8dbae3a146ca633bf55118e2569bf99a8a6cdce64801339120d
@@ -279,7 +279,7 @@ module OpenHAB
279
279
  # Loggging inflates method length
280
280
  def check_guards(event:)
281
281
  if @guard.should_run? event
282
- now = TimeOfDay::TimeOfDay.now
282
+ now = Time.now
283
283
  return true if @between.cover? now
284
284
 
285
285
  logger.trace("Skipped execution of rule '#{name}' because the current time #{now} "\
@@ -64,6 +64,32 @@ module OpenHAB
64
64
  def to_s
65
65
  "#{to_string}%"
66
66
  end
67
+
68
+ #
69
+ # Scale the value to a particular range
70
+ #
71
+ # @param range [Range] the range as a numeric
72
+ # @return [Numeric] the value as a percentage of the range
73
+ #
74
+ def scale(range) # rubocop:disable Metrics/AbcSize
75
+ unless range.is_a?(Range) && range.min.is_a?(Numeric) && range.max.is_a?(Numeric)
76
+ raise ArgumentError, 'range must be a Range of Numerics'
77
+ end
78
+
79
+ result = (to_d * (range.max - range.min) / 100) + range.min
80
+ case range.max
81
+ when Integer then result.round
82
+ when Float then result.to_f
83
+ else result
84
+ end
85
+ end
86
+
87
+ # scale the value to fit in a single byte
88
+ #
89
+ # @return [Integer] an integer in the range 0-255
90
+ def to_byte
91
+ scale(0..255)
92
+ end
67
93
  end
68
94
  end
69
95
  end
@@ -5,5 +5,5 @@
5
5
  #
6
6
  module OpenHAB
7
7
  # @return [String] Version of OpenHAB helper libraries
8
- VERSION = '4.12.1'
8
+ VERSION = '4.13.3'
9
9
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openhab-scripting
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.12.1
4
+ version: 4.13.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brian O'Connell
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-11-06 00:00:00.000000000 Z
11
+ date: 2021-11-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler