Holger Friedrich aae63e9488
[knx] Refactoring of KnxCoreTypeMapper and UOM Support ()
* [knx] Refactoring, add basic support for UOM

Preparation for refactoring KnxCoreTypeMapper.
Carryover from .
Merge UOM implementations.

* [knx] Adapt tests

DPT strings for QuantityType now strip off a tailing .0 when decimals
are converted.

* [knx] Refactoring

Use pattern matching with instanceof operator (new Java17 feature).

* [knx] Refactoring, performance improvements

Introduce KNXChannel class.
Carryover from .

* [knx] Add warning for incompatible DPT type

Configuring incompatible DPT/channel combinations (e.g. DPT 1.005 (alarm) on Contact channels
or DPT 1.019 (windows/door) on Switch channels) is not allowed but was silently ignored.
This PR adds a warning in case incompatible configurations are detected.

Carryover from .

* [knx] Add full support for UoM

Replace UoM handling with the implementation from smarthome/j.
Carryover from .

* [knx] Refactor KNXCoreTypeMapper, add RGBW and xyY

Carryover from .

* [knx] Fix RGB conversion

Carryover from .

* [knx] Remove workarounds obsoleted by Calimero 2.5

Carryover from .

* [knx] Add parameter for disabling incoming UoM

Carryover from .

* [knx] Fix fallback to DecimalType in number conversion

Carryover from .

* [knx] Fix DPT 251.600 decoding

Carryover from .

* [knx] Fix UoM handling for special types
* [knx] Add test for KNXChannelFactory
* [knx] Update CODEOWNERS for knx
* [knx] Default conversion for DPT 5.001 and 6.001
* [knx] Fix write blocked forever after read from bus

Carryover from  and .

* [knx] Use new class ColorUtil from core for HSB conversion

Also-by: Jan N. Klug <github@klug.nrw>
Signed-off-by: Holger Friedrich <mail@holger-friedrich.de>
2023-03-17 12:50:13 +01:00
..