[mqtt] set the proper unit in the state description (#13604)

So that other pieces of openhab can know what unit it's going to be,
without it having a value yet. Importantly, any necessary conversion
that need to be applied to the other portion of the state description -
min, max, and step.

See also https://github.com/openhab/openhab-core/pull/3132

Signed-off-by: Cody Cutrer <cody@cutrer.us>
This commit is contained in:
Cody Cutrer
2022-10-27 00:34:50 -06:00
committed by GitHub
parent 234d354a2e
commit 26ad08cca9
2 changed files with 7 additions and 2 deletions

View File

@@ -149,6 +149,11 @@ public class NumberValue extends Value {
if (min != null) {
builder = builder.withMinimum(min);
}
return builder.withStep(step).withPattern("%s %unit%");
if (!unit.equals(Units.ONE)) {
builder.withPattern("%s " + unit);
} else {
builder.withPattern("%s %unit%");
}
return builder.withStep(step);
}
}