This simplifies the DSMRHandlerFactory code so it no longer needs to register and keep track of a discovery service for each bridge.
Also contains a few other improvements:
* more constructor injection
* add a few missing @NonNullByDefault on test classes
Signed-off-by: Wouter Born <github@maindrain.net>
* Upgrades Karaf to 4.3.1
* Uses Pax Logging as runtime dependency instead of Felix Log
To change the log level in itests, change the value of org.ops4j.pax.logging.DefaultServiceLog.level in itest-include.bndrun
* Adds --add-opens and nashorn.args in itest-include.bndrun to prevent some warnings being logged in itests
Related to openhab/openhab-distro#1167
Signed-off-by: Wouter Born <github@maindrain.net>
The groupId variable results in the wrong configfile GAV when building a single KAR with karaf:kar for an add-on.
Signed-off-by: Wouter Born <github@maindrain.net>
* [lifx] Improve firmware version support
When the firmware of a light is upgraded the supported features can change.
With these changes the binding uses the features based on the light firmware version.
Also corrects some of the temperature ranges based on the LIFX products description.
Signed-off-by: Wouter Born <github@maindrain.net>
* Resolve itest runbundles for Gson and Commons Lang upgrades
* Fix JsonParser deprecations too
* Fix feature verification
Signed-off-by: Wouter Born <github@maindrain.net>
* Reworks many commons-lang usages to use standard Java
* Updates all remaining commons.lang imports to commons.lang3
Related to openhab/openhab-addons#7722
Signed-off-by: Wouter Born <github@maindrain.net>
* Remove dependency on commons-lang classes
* Use HexUtils
* Fix/add missing initial contribution author lines
* Add unit test for MACAddress
* Rename protocol package to dto
Signed-off-by: Wouter Born <github@maindrain.net>
* Adds a jackson.version property to simplify managing the version
* Make sure the specified version is used as add-on dependency by excluding Jackson from transitive dependencies
* Use openhab.tp-jackson feature with dynamodb
* Remove jackson-dataformat-cbor dependency from features which is now also provided by the openhab.tp-jackson feature
Signed-off-by: Wouter Born <github@maindrain.net>
* Updates links to target the openhab-addons 'main' branch instead of the 'master' branch
* Updates some NOTICE files to indicate content is maintained by openHAB instead of Eclipse SmartHome
Signed-off-by: Wouter Born <github@maindrain.net>
The only way to recover from an incompatible OH2 database is to create a new database.
With these changes the add-on will create a new database automatically and archive the incompatible database files in a backup directory.
Fixes#8794
Signed-off-by: Wouter Born <github@maindrain.net>
* Update configfile lines for renamed openhab-addons-external artifactId
* Add missing 2.5.x configfiles files which were never merged into the main branch
* Fix configfile lines not aggregated in feature.xml file
Fixesopenhab/openhab-distro#1205
Signed-off-by: Wouter Born <github@maindrain.net>
Add-ons should not depend on tec.uom.se classes but use core unit classes instead so they are less impacted when this library is replaced or upgraded.
Signed-off-by: Wouter Born <github@maindrain.net>
This simplifies the PlugwiseHandlerFactory code so it no longer needs to register and keep track of a discovery service for each bridge.
Also contains a few other improvements:
* fix lastRequest timestamp not updated when sending messages to discover node properties
* use java.time Duration and Instant
* use List.of, Set.of
* remove redundant null suppression because of EEAs
Signed-off-by: Wouter Born <github@maindrain.net>
These workarounds to prevent false positives can be removed now the EEAs allow for proper null analysis.
Signed-off-by: Wouter Born <github@maindrain.net>
* Properly handle datagrams that are not immediately available so no NPEs are logged on debug
* Properly handle sockets channels that are not connected so no NPEs are logged on debug
* Prevent load/garbage by reusing ByteBuffer and not allocating trace logging strings
Fixes#8932
Signed-off-by: Wouter Born <github@maindrain.net>
* [rrd4j] Improve performance
* Cache item to improve performance
* Also return DecimalType for QuantityType values
Related to #8928
Reintroduces #8809
Signed-off-by: Wouter Born <github@maindrain.net>
* Fix index out of bounds when persisting empty StringType values
* Fix deserialization when strings contain type separator
* Improve debug logging
* Improve test coverage
Fixes#8790
Signed-off-by: Wouter Born <github@maindrain.net>
* Add Groovy scripting support
This makes it really easy to start using Groovy 3.x scripts with openHAB!
Signed-off-by: Wouter Born <github@maindrain.net>
* Add/explain more command line options
* Structure options in a table
* Explain when to use -DwithResolver
Signed-off-by: Wouter Born <github@maindrain.net>
* Remove duplication by making use of default Java generated exceptions
* Make ThingActions labels/descriptions more consistent
Signed-off-by: Wouter Born <github@maindrain.net>
* Configures XStream security to prevent "Security framework of XStream not initialized, XStream is probably vulnerable" warnings.
* Resolves the itest bundles for the upgrade to XStream 1.4.13
Related to openhab/openhab-core#1688
Signed-off-by: Wouter Born <github@maindrain.net>
Upgrades the compiler and its dependencies so the compiler results of Maven builds are more similar to those generated in recent Eclipse versions.
To fix compilation issues in Eclipse for add-ons using classes from javax.xml.stream several dependencies were upgraded/excluded.
Signed-off-by: Wouter Born <github@maindrain.net>
The ThingStatus is updated asynchronously so the test is unstable when the status is not updated immediately.
Signed-off-by: Wouter Born <github@maindrain.net>
* Improve exception handling of the embedded MQTT broker so the port can be reconfigured when it is already bound and it properly unlocks files
* Rework MQTT integration tests so they each run the embedded broker on their own reserved port
Signed-off-by: Wouter Born <github@maindrain.net>
The handleUpdate method was deprecated when profiles were introduced (see eclipse-archived/smarthome#4108).
Instead the "follow profile" can be used which forwards item updates as commands to handlers.
This profile works with any binding instead of only those that implement the handleUpdate method.
Related to openhab/openhab-core#1669
Signed-off-by: Wouter Born <github@maindrain.net>
This should make it easier to fix these broken add-ons and the PRs that fix them will then not contain all these changes which make them easier to review.
Signed-off-by: Wouter Born <github@maindrain.net>