Commit Graph

1926 Commits

Author SHA1 Message Date
Wouter Born
b77f954848
Improve ThreadPoolManagerTest stability (#4035)
When the CPU load of a system is high these timeouts may not be realistic.

Fixes #3254

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-12 21:42:02 +01:00
Wouter Born
18d9b531ff
Fix wrong class name logged in LocaleServiceImpl (#4034)
Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-12 21:37:48 +01:00
Jacob Laursen
6867f1e956
[discovery] Fix Instant serialization/deserialization regression (#4029)
* Fix Instant serialization/deserialization regression

Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>

* Consolidate serialization and deserialization in same type adapter

Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>

* Simplify deserializer

Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>

---------

Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>
2024-01-12 08:39:11 +01:00
Andrew Fiddian-Green
9cb4b9ee1f
UsbSerialDiscovery service based on Windows registry (#3934)
Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
2024-01-11 20:00:04 +01:00
Jacob Laursen
6b2182dec6
Refactor java.util.Date usages to java.time.Instant (#4026)
Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>
2024-01-07 20:51:46 +01:00
GiviMAD
3c61c1d649
[Audio] Add piped audio stream and fix raw PCM streams format (#3960)
* [Audio] Add piped audio stream and fix pcm format usage

Signed-off-by: Miguel Álvarez <miguelwork92@gmail.com>
2024-01-07 14:18:50 +01:00
J-N-K
36cafd765f
Fix CurrencyUnit (#4016)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2024-01-05 18:20:43 +01:00
Wouter Born
8e7d5d880c
Fix JavaDoc build (#4018)
Caused by #3957

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-05 18:00:03 +01:00
Holger Friedrich
7bac24e58f
IpAddonFinder: Skip installed addons (#4013)
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2024-01-04 22:27:18 +01:00
Wouter Born
c757819a15
Fix JavaDoc issues (#4004)
Fixes various issues including wrong parameter names, references, links and dangling JavaDocs.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-04 00:03:48 +01:00
Wouter Born
2babea4c9a
Update license headers to 2024 (#4011)
Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-03 21:20:34 +01:00
Wouter Born
6fc7700ea6
Use protected modifier with constructor of abstract classes (#4010)
Abstract classes should not have public constructors.
Constructors of abstract classes can only be called in constructors of their subclasses.
So there is no point in making them public.
The protected modifier should be enough.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-03 16:17:14 +01:00
Wouter Born
81a91ee9ae
Simplify adding elements to Collections (#4006)
* Simplify adding elements to Collections

This optimizes and simplifies the code that adds elements to Collections.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-03 14:51:33 +01:00
Wouter Born
afd1d4726c
Iterate using Map entries (#4003)
* Iterate using Map entries

Iteration using Map entries is preferred because it is more efficient and helps preventing NPEs.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-03 14:50:50 +01:00
Wouter Born
106c8b2270
Remove unnecessary semicolons (#4009)
This helps with stopping the proliferation of unnecessary semicolons.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-03 13:47:23 +01:00
Wouter Born
d162b82206
Fix String.format argument mismatches (#4008)
These argument mismatches cause wrong messages being logged and thrown in exceptions.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-03 13:13:53 +01:00
Wouter Born
26a958cd4d
Use static inner classes (#4002)
A static inner class does not keep an implicit reference to its enclosing instance.
This prevents a common cause of memory leaks and uses less memory per instance of the class.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-03 12:35:26 +01:00
Wouter Born
10c0cf8211
Simplify assertions (#3996)
* Simplify assertions

Using the appropriate assertion methods results in less and easier to read code as well as better error messages when assertions fail.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-03 12:24:50 +01:00
Wouter Born
564d6e673e
Fix SerialPort.getFlowControlMode() infinite recursion (#4007)
An infinite recursion would occur when calling this method.
I did not find any add-ons using this method but that could be due to this bug.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-03 12:15:41 +01:00
Wouter Born
58a106d36d
Use diamond operator (#4001)
Often the type can be inferred so the diamond operator can be used to simplify the code.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-03 08:22:43 +01:00
Wouter Born
dc5f50db63
Fix assertEquals order (#3995)
The first parameter should be the expected value and the second parameter the actual value.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-02 22:27:53 +01:00
Wouter Born
896b05e177
Replace or remove assert statements (#3994)
Java assertions are disabled by default so in this PR they are replaced/removed where applicable.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-02 22:21:42 +01:00
Mark Herwege
dbc3b19a4f
fix empty rule condition (#3993)
Signed-off-by: Mark Herwege <mark.herwege@telenet.be>
2024-01-02 19:51:11 +01:00
Wouter Born
041e3b5127
Remove redundant modifiers (#4000)
Removes redundant modifiers from the code.
These modifiers redeclare the default modifiers that apply to interfaces, enums etc.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-02 19:29:29 +01:00
Wouter Born
4e76d76088
Remove redundant array creation for calling varargs methods (#3997)
These array creations are unnecessary because arrays are created automatically for methods using varargs.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-02 19:01:34 +01:00
Wouter Born
89b67adbd7
Use isEmpty instead of 0 comparisons (#3999)
`isEmpty()` expresses the intent more clearly and is therefore preferred.
Counting the number of elements can also be an expensive operation e.g. when using linked lists.

Signed-off-by: Wouter Born <github@maindrain.net>
2024-01-02 18:47:36 +01:00
J-N-K
a5316f920e
Refactor ThingHandlerService to an OSGi component prototype (#3957)
Also-by: Connor Petty <mistercpp2000+gitsignoff@gmail.com>
Signed-off-by: J-N-K <github@klug.nrw>
2024-01-02 13:09:51 +01:00
openhab-bot
1ddbe3180a
New translations addons.properties (Italian) (#3979) 2024-01-02 10:53:10 +01:00
Kai Kreuzer
30ae005956
Fix build number reporting at startup (#3991)
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2024-01-02 10:40:02 +01:00
Wouter Born
7d1dcd7937
Add network-interface context (#3981)
This allows for selecting network interface names in configuration parameters.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-12-31 22:17:10 +01:00
J-N-K
2abe4e20ed
Respond with 404 if add-on is missing in add-on service (#3989)
* Respond with 404 if add-on is missing in add-on service

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-12-31 14:56:15 +01:00
lolodomo
8b14d56e2e
[sitemap] Fix parsing of button (buttongrid element built with MainUI) (#3980)
Fix openhab/openhab-webui#2242

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-12-30 15:57:52 +01:00
lolodomo
63ae134c33
Consider network settings to avoid creating unexpected JmDNS instances (#3978)
Fix #3976

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-12-30 12:50:27 +01:00
Wouter Born
f376606e92
Simplify boolean expressions (#3971)
Signed-off-by: Wouter Born <github@maindrain.net>
2023-12-28 13:19:01 +01:00
Wouter Born
ba5647b871
More code cleanups (#3975)
While cleaning up the code I found a some more code to cleanup:

* Remove unnecessary boxing
* Use `contains(..)` instead of `indexOf(..) != -1`
* Use `assertInstanceOf` in tests
* Make expensive trace logging conditional
* Remove redundant constructor
* Replace `collect(Collectors.toUnmodifiableList())` with `toList()`
* Replace `filter(..).count() == 0L` with `noneMatch(..)`
* Replace `filter(..).count() > 0` with `anyMatch(..)`

Signed-off-by: Wouter Born <github@maindrain.net>
2023-12-28 13:15:50 +01:00
Wouter Born
0e03943e48
Use String.join instead of Collectors.joining (#3973)
* Use String.join instead of Collectors.joining

String.join results in less code when joining an Iterable or Array.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-12-28 13:11:14 +01:00
Wouter Born
e958d5b46a
Replace lambdas with method references (#3972)
Method references are more readable because they refer to class names and usually result in less code.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-12-28 09:55:31 +01:00
J-N-K
bb7a0dad1c
Fix NPE in GroupStateTriggerHandler and GroupCommandTriggerHandler (#3966)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-12-27 23:41:44 +01:00
Holger Friedrich
361273fcb5
IP addon finder: developer docs (#3948)
* IP addon finder: developer docs

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-12-27 20:25:32 +01:00
Andrew Fiddian-Green
a93f3d7d90
Add-on suggestion finder for USB devices (#3922)
Also-by: Holger Friedrich <mail@holger-friedrich.de>
Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
2023-12-27 18:27:40 +01:00
Florian Hotze
f5bd7f94f3
[rest] Add no-cache directive to cached REST responses (#3970)
Fixes https://github.com/openhab/openhab-webui/issues/2102.

This forces the browser to revalidate the cache every time it is accessed to ensure the data is always fresh.
See https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control#directives.

This is approach is also suggested in the mdn web docs, see https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control#up-to-date_contents_always.

Signed-off-by: Florian Hotze <florianh_dev@icloud.com>
2023-12-27 17:52:49 +01:00
Wouter Born
b08a01c93f
Remove unnecessary parenthesis from lambdas (#3968)
Signed-off-by: Wouter Born <github@maindrain.net>
2023-12-27 17:52:13 +01:00
Wouter Born
ec05a63738
Remove unnecessary boxing (#3969)
Using primitives makes the code faster and consume less memory.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-12-27 17:50:09 +01:00
J-N-K
ff6b33f3d8
Fix duplicate UIDs in remote add-on services (#3961)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-12-26 23:17:05 +01:00
J-N-K
ad1c37d382
Fix month, week, day not supported (#3964)
Due to the way month, week and day are defined in Indriya their symbol is not added as alias. This is a bug in indriya, but their release cycles are quite long and we should provide a fix for our users.

This should be backported to 4.1.x

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-12-26 22:43:33 +01:00
Wouter Born
11e51abb44
Use OnOffType.from to reduce code (#3954)
You can create an `OnOffType` using a boolean nowadays which reduces the amount of code.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-12-23 15:33:07 +01:00
Holger Friedrich
bada23fdb8
Minor code cleanup (#3942)
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-12-23 12:54:29 +01:00
Holger Friedrich
839ba1ab4c
Apply spotless after release, resolve bundles (#3953)
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-12-22 23:14:28 +01:00
openhab-bot
3b279587b1 [unleash-maven-plugin] Preparation for next development cycle. 2023-12-22 11:48:43 +00:00
Kai Kreuzer
074fcdd7ea
Delay the IP scan to make sure that no further candidates are added (#3951)
* Delay the IP scan to make sure that no further candidates are added and do not use a dedicated thread pool

Signed-off-by: Kai Kreuzer <kai@openhab.org>
2023-12-22 08:49:36 +01:00
openhab-bot
be456792d3
New Crowdin updates (#3950)
* New translations i18n.properties (Romanian)

* New translations network.properties (Romanian)

* New translations i18n.properties (French)

* New translations network.properties (French)

* New translations i18n.properties (Spanish)

* New translations network.properties (Spanish)

* New translations i18n.properties (Czech)

* New translations network.properties (Czech)

* New translations addons.properties (Danish)

* New translations i18n.properties (Danish)

* New translations network.properties (Danish)

* New translations marketplace.properties (Danish)

* New translations units.properties (Danish)

* New translations i18n.properties (German)

* New translations network.properties (German)

* New translations i18n.properties (Greek)

* New translations network.properties (Greek)

* New translations i18n.properties (Finnish)

* New translations network.properties (Finnish)

* New translations i18n.properties (Hebrew)

* New translations network.properties (Hebrew)

* New translations i18n.properties (Hungarian)

* New translations network.properties (Hungarian)

* New translations units.properties (Hungarian)

* New translations i18n.properties (Italian)

* New translations network.properties (Italian)

* New translations units.properties (Italian)

* New translations i18n.properties (Dutch)

* New translations network.properties (Dutch)

* New translations i18n.properties (Norwegian)

* New translations network.properties (Norwegian)

* New translations i18n.properties (Polish)

* New translations network.properties (Polish)

* New translations i18n.properties (Russian)

* New translations network.properties (Russian)

* New translations i18n.properties (Slovenian)

* New translations network.properties (Slovenian)

* New translations i18n.properties (Swedish)

* New translations network.properties (Swedish)

* New translations i18n.properties (Ukrainian)

* New translations network.properties (Ukrainian)

* New translations i18n.properties (Chinese Simplified)

* New translations network.properties (Chinese Simplified)

* New translations i18n.properties (Portuguese, Brazilian)

* New translations network.properties (Portuguese, Brazilian)
2023-12-21 21:51:49 +01:00
Kai Kreuzer
4b310aff30
Catch ISE if config admin is no longer available (#3949) 2023-12-21 21:36:11 +01:00
Andrew Fiddian-Green
924e7b2d6d
Fixes #3946 (#3947)
* Fixes #3946

Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
2023-12-21 18:23:43 +01:00
Kai Kreuzer
369bd228e7
Move addons.xml to runtime folder (#3944)
* Move addons.xml to runtime folder

Signed-off-by: Kai Kreuzer <kai@openhab.org>
2023-12-20 23:53:10 +01:00
Kai Kreuzer
dceec22a35
Improve HTTP 404 handling and logging (#3940) 2023-12-20 12:35:25 +01:00
Jacob Laursen
e8641efd5b
Provide I18N properties for Unit Settings (#3941) 2023-12-20 12:34:58 +01:00
Holger Friedrich
5e94d8350b
Additional logging AddonInfo addons.xml (#3928)
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-12-20 11:19:35 +01:00
lolodomo
d7486a985e
Sitemap generator: fix button parsing for Buttongrid (#3938)
Fix #3937

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-12-20 09:46:41 +01:00
Wouter Born
81f14c9df1
Upgrade logback-classic to 1.3.14 (#3935) 2023-12-19 23:26:22 +01:00
Kai Kreuzer
04cd8408de
Don't log errors on NotFoundExceptions in Jetty (#3931) 2023-12-19 21:16:05 +01:00
openhab-bot
cb1b355869
New Crowdin updates (#3929)
* New translations addons.properties (Hungarian)

* New translations addons.properties (Italian)

* New translations languagesupport.properties (Portuguese)

* New translations languagesupport.properties (Portuguese, Brazilian)

* New translations addons.properties (Hebrew)
2023-12-19 21:05:30 +01:00
Andrew Fiddian-Green
3362bfbea0
Upnp add M-SEARCH with search target ST: upnp:rootdevice header (#3933)
Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
2023-12-19 20:40:20 +01:00
Holger Friedrich
24b1784d44
Reduce SAT warnings (#3932)
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-12-19 20:37:57 +01:00
Holger Friedrich
8bed621c8c
Service to suggest addons via generic IP scan (#3920)
* Service to suggest addons via generic IP scan

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-12-17 13:12:55 +01:00
openhab-bot
2c9312e55c
New Crowdin updates (#3919)
* New translations addons.properties (Danish)

* New translations addons.properties (Italian)

* New translations addons.properties (French)
2023-12-16 17:23:47 +01:00
Holger Friedrich
fe5f130ca7
minor doc update to fix javadoc build (#3926)
* minor doc update to fix javadoc build

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
Co-authored-by: Andrew Fiddian-Green <software@whitebear.ch>
2023-12-16 17:22:40 +01:00
GiviMAD
8cc8d8668a
[Voice] Fix match question and allow force command (#3925)
* [voice] Fix match question and allow force command

Signed-off-by: Miguel Álvarez <miguelwork92@gmail.com>
2023-12-16 12:29:45 +01:00
Mark Herwege
d3ebc824b3
jar file add-on logger name (#3921)
Signed-off-by: Mark Herwege <mark.herwege@telenet.be>
2023-12-16 11:26:30 +01:00
GiviMAD
4ace1557f4
[voice] Add interface to represent a remote keyword spotter (#3564)
Signed-off-by: Miguel Álvarez <miguelwork92@gmail.com>
2023-12-16 11:22:38 +01:00
J-N-K
c8a6cf2603
[UoM] Add currency handling (#3503)
* Add currency as unit

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-12-16 11:18:25 +01:00
Mark Herwege
fe242f8ab9
Modified finder discovery schema to make future finders easier to create (#3924)
* change discovery method schema

Signed-off-by: Mark Herwege <mark.herwege@telenet.be>
2023-12-16 11:08:09 +01:00
Holger Friedrich
4e634c6b55
Service to suggest addons based on running processes (#3904)
* Service to suggest addons based on running processes

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-12-16 10:52:41 +01:00
lolodomo
4b92db3775
Add a log when loading a YAML file (#3916)
For consistency with other model files loading.

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-12-13 08:26:29 +01:00
Andrew Fiddian-Green
8082daa290
UPnpAddonFinder M-SEARCH ST: ssdp:all (#3918)
Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
2023-12-12 18:29:27 +01:00
Mark Herwege
5ffeb1fc72
i8n suggestion finders config (#3913)
Signed-off-by: Mark Herwege <mark.herwege@telenet.be>
2023-12-11 21:58:18 +01:00
Andrew Fiddian-Green
be70a13afe
Handle ISE when shutting down (#3910)
* Suppress logging when shutting down
* Cancel scheduled tasks on shutdown

Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
2023-12-10 22:45:12 +01:00
lolodomo
070de55b27
Add a YAML file provider for semantic tags (#3659)
* Add a YAML file provider for semantic tags

Files in folder conf/tags are loaded by this provider.

Related to #3619

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-12-10 11:26:03 +01:00
lolodomo
152ffe3fbb
Fix handling of mDNS instances when an IP address changed (#3906)
Fix openhab/openhab-addons#16023

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-12-09 21:56:56 +01:00
Mark Herwege
708a954081
Fix addon name localisation before installation (#3908)
* fix addon name and description

Signed-off-by: Mark Herwege <mark.herwege@telenet.be>
2023-12-09 20:29:24 +01:00
Andrew Fiddian-Green
bb30eab3b9
[addon] fix #2204 (#3905)
Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
2023-12-09 12:19:51 +01:00
Andrew Fiddian-Green
62a50a409a
Service to find suggested addons to install (#3806)
Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
Co-authored-by: Mark Herwege <mark.herwege@telenet.be>
2023-12-07 17:32:33 +01:00
Andrew Fiddian-Green
de9912d06b
AddonInfoAddonsXmlProvider check for missing folder (#3903)
* [AddonInfoAddonsXmlProvider] fix issue #3901

Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
2023-12-07 14:30:10 +01:00
Jared
44b92dbc59
add support for passing extra fields to oauth token request (#3881)
allows using oauth client for authentication with velux API https://github.com/nougad/velux-cli/blob/master/velux-protocol.md#initial-login

Signed-off-by: Jared Lyon <lyonj3@gmail.com>
2023-12-06 07:32:47 +01:00
GiviMAD
075bcea8c2
[voice] Support custom rules on item metadata (#3897)
* [voice] Support custom rules on item metadata
* fix isTemplate functionality and test
* fix filter location based for non labeled rules

Signed-off-by: Miguel Álvarez <miguelwork92@gmail.com>
2023-12-06 07:18:44 +01:00
lolodomo
76b10ac1c1
[Sitemap] Change syntax for Buttongrid sitemap element (#3898)
Follow-up #3810

Location in the grid is now defined by a row number and a column number.

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-12-05 21:50:58 +01:00
Andrew Fiddian-Green
cc9b70516a
AddonInfo extensions (#3865)
Signed-off-by: Andrew Fiddian-Green <software@whitebear.ch>
2023-12-05 16:49:31 +01:00
Jacob Laursen
aa305d90d0
Fix AutoUpdatePolicy for channel (#3888)
* Fix AutoUpdatePolicy for channel

Fixes #3887

Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>

* Simplify setting of auto update policy

Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>

---------

Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>
2023-12-04 10:56:33 +01:00
Holger Friedrich
9a9726b8fe
[ColorUtil] Extend rgbToHsb(PercentType[]) for RGBW (#3882)
* [ColorUtil] Extend rgbToHsb(PercentType[]) for RGBW

rgbToHsb(PercentType) supports arrays of size 4 (RGBW) in addition to and arrays of size 3 (RGB).

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-12-03 20:14:35 +01:00
J-N-K
7186bf85ff
Add time-series support for websockets (#3889)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-12-03 20:11:56 +01:00
joerg1985
32237a9bdc
Do not leak running pools from the internal collection (#3885)
Signed-off-by: Jörg Sautter <joerg.sautter@gmx.net>
2023-11-24 22:24:37 +01:00
lolodomo
f71ebfb83c
Extend support to ISO8601 format for sitemap chart period parameter (#3863)
* Extend support to ISO8601 format for sitemap chart period parameter

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-11-24 16:53:10 +01:00
joerg1985
ae117f6317
Use a single thread to watch all event executors (#3884)
Signed-off-by: Jörg Sautter <joerg.sautter@gmx.net>
2023-11-24 16:52:07 +01:00
joerg1985
bdb1e55b58
Use a scheduled thread pool in JsonStorage + Bugfixes (#3874)
* Use a scheduled thread pool in JsonStorage to avoid one thread per instance
* Removed an incorrect conversion between millis and nanos

Signed-off-by: Jörg Sautter <joerg.sautter@gmx.net>
2023-11-22 22:43:44 +01:00
Holger Friedrich
3e3afd8cdc
[DSL] Expose ColorUtil methods to DSL rules (#3879)
New functions for RGBW introduced in #3849.

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-11-22 21:36:39 +01:00
J-N-K
8a6e7432cd
Add log websocket (#3859)
This adds a websocket connection for receiving logs.

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-11-22 21:35:35 +01:00
Wouter Born
7af02598ef
Small code cleanup (#3873)
* Removes hyphens from JavaDoc parameters
* Fixes a few 'exists' grammar mistakes

Signed-off-by: Wouter Born <github@maindrain.net>
2023-11-15 16:47:58 +01:00
Holger Friedrich
9ad2fef549
Fix javadoc warnings (#3870)
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-11-15 09:21:07 +01:00
Holger Friedrich
47cc6db982
Fix javadoc warnings in directory org.openhab.core (#3867)
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-11-12 11:38:36 +01:00
Marco Müller
237f2ebb56
[core] Add conversion for HSB to RGBW and back (#3849)
* Add conversion for HSB to RGBW and back
for KNX DPT251.600 to use all 4 colors.

With the new feature, the HSBType can converted into RGBW, and also back
to HSB.

Due to the conversion, some accuracy is lost, but the result is
approximately correct.

Signed-off-by: Marco Müller <marco@ms-mueller.ch>
2023-11-12 11:23:44 +01:00
J-N-K
cdbca4dd0a
Allow sending TimeSeries for items (#3597)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-11-07 20:08:41 -08:00
maniac103
fb6f1923e8
[sitemap] Provide information about widget label source to clients (#3804)
* [sitemap] Provide information about widget label source to clients

The label can be populated from a label specified on the respective
sitemap widget, or (if no label was specified) from the label of the
backing item. Allow clients to differentiate between both cases.

Related to openhab/openhab-webui#2065

Signed-off-by: Danny Baumann <dannybaumann@web.de>
2023-11-06 21:40:36 -08:00
jimtng
99bb994b36
Suppress SseItemStates warnings during startup (#3774)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-11-06 21:36:21 -08:00
GiviMAD
ade531288f
[voice] Support item descriptions in built-in interpreter. (#3853)
* [voice] Support item descriptions in built-in interpreter

Signed-off-by: Miguel Álvarez <miguelwork92@gmail.com>
2023-11-06 21:34:00 -08:00
Gwendal Roulleau
26283dab75
[webaudio] Allow stopping play (#3766)
Signed-off-by: Gwendal Roulleau <gwendal.roulleau@gmail.com>
Co-authored-by: Gwendal Roulleau <gwendal.roulleau@gmail.com>
2023-11-01 08:50:01 +01:00
J-N-K
7b0f77bac3
Fix thing upgrades for bridges (#3858)
Bridges could not be updated because the updated bridge was a `ThingImpl` instead of a `BridgeImpl`. Also the copy-creator in the `BridgeBuilder` was missing. This should also be cherry-picked to 4.0.x.

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-10-30 18:31:32 +01:00
Mark Herwege
d75d6dffce
Fix UI defined sitemaps (#3850)
* fix UI defined sitemaps
* allow AND conditions
* label not required

Signed-off-by: Mark Herwege <mark.herwege@telenet.be>
2023-10-26 23:30:17 +02:00
Wouter Born
f2c20af944
Improve FolderObserver ignored paths handling (#3856)
The FolderObserver needs to make sure that paths are properly handled for any parsers that are added at any moment by other threads during activation.

Fixes #3784
Fixes #3793

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-21 09:23:07 +02:00
Kai Kreuzer
14f8490d1c
Address warnings in StringUtils class (#3845)
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2023-10-15 22:01:07 +02:00
lolodomo
7281dca286
[Sitemap] Add optional conditional rules for icon (#3820)
This allows dynamic icons based on items states even with non OH icon sources.
This also allows overwritting the default handling with state done by the icon servlet.

Example: icon=[item1>0=temperature,==0=material:settings,f7:house]

Related to openhab/openhab-webui#1938

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-10-15 22:00:35 +02:00
lsiepel
4001161810
Add string utils to core (#3738)
* Add utils to core

Signed-off-by: lsiepel <leosiepel@gmail.com>
2023-10-15 20:35:15 +02:00
J-N-K
ae85096e53
Improve code in QuantityType (#3842)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-10-10 21:49:41 +02:00
jimtng
e9d969c31d
Fix QuantityType UNIT_PATTERN regex (#3841)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-10-10 10:08:45 +02:00
Wouter Born
783c57cbb9
Use 'uid' instead of 'UID' as method parameters (#3840)
Using 'UID' is confusing as method parameter because it can be mistaken for some kind of constant while reading code.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-09 21:39:47 +02:00
Wouter Born
e8e1c9fe73
Simplify code that creates List, Map and Set objects (#3836)
Simplifies the code by using List.of, List.copyOf etc. where possible which results in less code and imports.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-09 18:00:00 +02:00
jimtng
304453ec58
Make DecimalType, QuantityType, PercentType accept lowercased exponent notation (#3834)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-10-09 10:59:25 +02:00
Wouter Born
09b3160a55
Simplify code using Stream.toList (#3831)
Stream.toList was introduced in Java 16 and creates an unmodifiable List so it can be used to simplify code whenever the List is not expected to be modified.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-09 09:20:08 +02:00
Florian Hotze
2794c973d3
[rest] Add caching for UoM info (#3838)
Signed-off-by: Florian Hotze <florianh_dev@icloud.com>
2023-10-09 09:18:45 +02:00
Florian Hotze
176e23f296
Fixes source filter not working for GenericEventTrigger (#3837)
While reviewing https://github.com/openhab/openhab-js/pull/300,
I noticed that filtering by source `org.openhab.core.expire` was not possible.

This was because the specified source was checked against the event topic, which makes no sense at all given that different schemes.
Source filtering is done inside the `apply` method.

Signed-off-by: Florian Hotze <florianh_dev@icloud.com>
2023-10-08 19:43:08 +02:00
lolodomo
e5518b9322
[Sitemap] Add support for multiple AND conditions (#3819)
Concerns labelcolor, valuecolor and visibility

Also fix wrong positions of ")" in Sitemap.xtext

Closes #3058

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-10-08 09:48:58 +02:00
jimtng
0d355fbbc7
Make QuantityType.toUnitRelative accept a String (#3802)
Signed-off-by: Jimmy Tanagra <jcode@tanagra.id.au>
2023-10-06 20:42:50 +02:00
Wouter Born
93d80e36b9
Remove unused javax.inject annotations (#3827)
AFAIK these annotations are not used when using declarative services.

I stubled upon these annotations when feature validation failed while creating #3817.
Xtext now uses Guice 7 which is using jakarta.inject imports.

Only si.uom:si-units:2.1 still imports javax.inject but it will also switch to jakarta.inject when 2.2 gets released.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-04 22:10:53 +02:00
Wouter Born
012d7a034f
FolderObserver improvements (#3821)
* Mark extensions as ready in addModelsToRepo only if parser was availabile
* Store valid extensions using Set instead of List
* Use java.nio where possible
* Add more debug logging
* Cleanup and simplify code

Signed-off-by: Wouter Born <github@maindrain.net>
2023-10-03 13:19:26 +02:00
openhab-bot
dda021ae07
New Crowdin updates (#3807)
* New translations addons.properties (Russian)
* New translations automation.properties (Hebrew)
* New translations languagesupport.properties (Portuguese)
* New translations languagesupport.properties (Portuguese, Brazilian)
* New translations scriptprofile.properties (Finnish)
* New translations voice.properties (Finnish)
* New translations voice.properties (Hebrew)
2023-10-02 10:30:39 +02:00
lolodomo
f7d176570c
[Sitemap] Accept an optional icon for each value/label mapping (#3809)
* [Sitemap] Accept an optional icon for each value/label mapping

When set by the user, the icon can be used by UIs for switch element with mappings to render a button with the icon rather than the label.

Related to #3441

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-10-02 09:36:23 +02:00
Mark Herwege
3eef2872f5
fix trailing space in state string (#3812)
Signed-off-by: Mark Herwege <mark.herwege@telenet.be>
2023-10-01 21:47:25 +02:00
lolodomo
366bffa406
[Sitemap] Introduce "Buttongrid" as new sitemap element (#3810)
Related to #3441

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-10-01 21:36:31 +02:00
lolodomo
369a49aab1
[sitemap/MainUI] Fix a typo in buildWidget (#3811)
Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-10-01 16:38:38 +02:00
Wouter Born
d4a433a4ce
Upgrade to Karaf 4.4.4 (#3814)
* Sync runtime dependencies with Karaf 4.4.4, most notably:
  * Jetty 9.4.52.v20230823
  * JNA 5.13.0
  * SLF4J 2.0.6
  * Pax Logging 2.2.3
  * Pax Web 8.0.22
* Resolve itest runbundles
* Use new Pax Web features to simplify dependency management
* Add specs features because Pax Web now depends on "asm"

Signed-off-by: Wouter Born <github@maindrain.net>
2023-09-29 20:23:31 +02:00
J-N-K
af4fce1e4f
Fix CommunicationManager command handling (#3714)
* Fix CommunicationManager

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-09-13 22:27:12 +02:00
GiviMAD
d87ef1f645
[voice] Add dialog group and location (#3798)
Signed-off-by: Miguel Álvarez <miguelwork92@gmail.com>
2023-09-13 21:09:13 +02:00
Wouter Born
f6435ec132
Fix countries and connection AddonInfo issues (#3797)
Fixes the following:

* connection and countries details missing for some AddonServices
* missing connection getter on AddonInfo
* countries lists has empty String when when countries info is missing

Related to #3795

Signed-off-by: Wouter Born <github@maindrain.net>
2023-09-09 12:15:03 +02:00
J-N-K
daeb367155
Add uptime to /systeminfo REST endpoint (#3796)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-09-09 10:57:07 +02:00
Mark Herwege
2b8475253f
Adjust QuantityType calculations for temperatures (#3792)
* fix quantity calculations
* remove temperature offsetProfile workaround

Signed-off-by: Mark Herwege <mark.herwege@telenet.be>
2023-09-08 18:02:34 +02:00
GiviMAD
4364e3b354
[voice] Reduce collisions on exact match and use item synonyms (#3698)
* [voice] Reduce collisions on exact match and use item synonyms

Signed-off-by: Miguel Álvarez <miguelwork92@gmail.com>
2023-09-08 16:32:43 +02:00
lolodomo
1c8096b4eb
[DSL] Expose ColorUtil methods to DSL rules (#3749)
Fix #3743

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-09-02 19:14:59 +02:00
Wouter Born
c39d15ade6
Cleanup code (#3787)
This code cleanup fixes various warnings in Eclipse.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-30 22:50:17 +02:00
Gwendal Roulleau
3ddbdb25ed
[cache] Fix concurrent use of a cache entry (#3785)
Closes #3507
Fix some rare case where the concurrent readings of a cache entry can fail.

Signed-off-by: Gwendal Roulleau <gwendal.roulleau@gmail.com>
2023-08-30 14:23:35 +02:00
Wouter Born
e765af06cb
Upgrade Maven and plug-ins (#3788)
* Use Maven 3.9.4 with GitHub Actions CI
* Upgrade Maven plug-ins

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-30 13:29:34 +02:00
Wouter Born
f8b52ea3f6
Use JUnit TempDir which automatically removes temp dirs (#3786) 2023-08-28 22:30:56 +02:00
dependabot[bot]
a0eeed9292
Bump org.apache.ivy:ivy in /bundles/org.openhab.core.semantics (#3773)
Bumps org.apache.ivy:ivy from 2.5.1 to 2.5.2.

---
updated-dependencies:
- dependency-name: org.apache.ivy:ivy
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-28 09:41:50 +02:00
J-N-K
b426cccf9c
Fix GenericThingProvider (#3779)
When things from multiple handler factories are provisioned from the same file the internal thing map was not properly updated.

Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-08-28 09:26:52 +02:00
Wouter Born
9cc7b58ac0
Fix linuxsysfs itest failing when serial device is connected (#3782)
This fixes that some linuxsysfs tests always fail on Linux whenever a real serial device is connected.
Due to the changes in #3290 the tests would also scan the actual devices causing tests to fail due to unexpected results.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-27 11:16:04 +02:00
Wouter Born
5daf4ff076
Fix SAT and null analysis issues (#3781)
Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-27 11:15:15 +02:00
Mark Herwege
096d11bf3f
Fix sitemap visibility rule with blanks (#3769)
Signed-off-by: Mark Herwege <mark.herwege@telenet.be>
2023-08-26 15:10:10 +02:00
Holger Friedrich
ce5cef959b
Migrate to java.nio.file.createTempFile (#3767)
Use function from nio package as it uses more restrictive file permissions.

Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-08-26 15:08:03 +02:00
Wouter Born
d909543415
Upgrade org.bouncycastle:bcpkix-jdk15on (#3765) 2023-08-19 10:54:57 +02:00
J-N-K
04eb32185c
Bump UoM libraries to 2.2 (#3758)
Signed-off-by: Jan N. Klug <github@klug.nrw>
2023-08-18 21:38:43 +02:00
lolodomo
5f8658d0ae
[REST] Check a label is provided when creating a new semantic tag (#3734)
Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-08-16 17:48:09 +02:00
Wouter Born
aef57edd73
Use workaround to fix high CPU usage by LinkedTransferQueue (#3756)
This is a workaround for JDK-8301341 by using the Java 11 LinkedTransferQueue with the QueueingThreadPoolExecutor in the Core and jUPnP.

Signed-off-by: Wouter Born <github@maindrain.net>
2023-08-14 10:37:20 +02:00
lolodomo
c12067a63b
[sitemap] Add new "staticIcon" parameter (#3735)
When set, the UI should not provide the item state when requestiong the
OH icon and should not request again the icon when the item state is
updated.

Related to openhab/openhab-android#3404

Signed-off-by: Laurent Garnier <lg.hc@free.fr>
2023-08-13 19:36:41 +02:00