[homekit] fix minValue, maxValue (#9300)

Signed-off-by: Eugen Freiter <freiter@gmx.de>
pull/9309/head
eugen 2020-12-09 20:49:24 +01:00 committed by GitHub
parent 7edfbc6391
commit ade041d5f0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 12 additions and 2 deletions

View File

@ -193,9 +193,19 @@ public class HomekitTaggedItem {
public <T> T getConfiguration(String key, T defaultValue) {
if (configuration != null) {
final @Nullable Object value = configuration.get(key);
if (value != null && value.getClass().equals(defaultValue.getClass())) {
return (T) value;
if (value != null) {
if (value.getClass().equals(defaultValue.getClass())) {
return (T) value;
}
// fix for different handling of numbers via .items and via mainUI, see #1904
if ((value instanceof BigDecimal) && (defaultValue instanceof Double)) {
return (T) Double.valueOf(((BigDecimal) value).doubleValue());
}
if ((value instanceof Double) && (defaultValue instanceof BigDecimal)) {
return (T) BigDecimal.valueOf(((Double) value).doubleValue());
}
}
}
return defaultValue;
}