From 11e51abb443409ec6bd4988c1155226007f5221b Mon Sep 17 00:00:00 2001 From: Wouter Born Date: Sat, 23 Dec 2023 15:33:07 +0100 Subject: [PATCH] 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 --- .../core/persistence/extensions/TestPersistenceService.java | 2 +- .../thing/internal/profiles/SystemHysteresisStateProfile.java | 4 ++-- .../core/thing/internal/profiles/SystemRangeStateProfile.java | 4 ++-- .../main/java/org/openhab/core/library/types/DecimalType.java | 2 +- .../src/main/java/org/openhab/core/library/types/HSBType.java | 2 +- .../main/java/org/openhab/core/library/types/PercentType.java | 2 +- .../java/org/openhab/core/library/types/QuantityType.java | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/bundles/org.openhab.core.persistence/src/test/java/org/openhab/core/persistence/extensions/TestPersistenceService.java b/bundles/org.openhab.core.persistence/src/test/java/org/openhab/core/persistence/extensions/TestPersistenceService.java index f497a5425..f5e26d02b 100644 --- a/bundles/org.openhab.core.persistence/src/test/java/org/openhab/core/persistence/extensions/TestPersistenceService.java +++ b/bundles/org.openhab.core.persistence/src/test/java/org/openhab/core/persistence/extensions/TestPersistenceService.java @@ -93,7 +93,7 @@ public class TestPersistenceService implements QueryablePersistenceService { @Override public State getState() { - return hours < 5 || hours > 10 ? OnOffType.ON : OnOffType.OFF; + return OnOffType.from(hours < 5 || hours > 10); } @Override diff --git a/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/profiles/SystemHysteresisStateProfile.java b/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/profiles/SystemHysteresisStateProfile.java index 1213fad1c..28cac1e2c 100644 --- a/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/profiles/SystemHysteresisStateProfile.java +++ b/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/profiles/SystemHysteresisStateProfile.java @@ -77,8 +77,8 @@ public class SystemHysteresisStateProfile implements StateProfile { final Object paramValue = context.getConfiguration().get(INVERTED_PARAM); final boolean inverted = paramValue == null ? false : Boolean.valueOf(paramValue.toString()); - this.low = inverted ? OnOffType.ON : OnOffType.OFF; - this.high = inverted ? OnOffType.OFF : OnOffType.ON; + this.low = OnOffType.from(inverted); + this.high = OnOffType.from(!inverted); } private @Nullable QuantityType getParam(ProfileContext context, String param) { diff --git a/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/profiles/SystemRangeStateProfile.java b/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/profiles/SystemRangeStateProfile.java index 5de09b33d..f41b3e73d 100644 --- a/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/profiles/SystemRangeStateProfile.java +++ b/bundles/org.openhab.core.thing/src/main/java/org/openhab/core/thing/internal/profiles/SystemRangeStateProfile.java @@ -84,8 +84,8 @@ public class SystemRangeStateProfile implements StateProfile { final Object paramValue = context.getConfiguration().get(INVERTED_PARAM); final boolean inverted = paramValue == null ? false : Boolean.valueOf(paramValue.toString()); - this.inRange = inverted ? OnOffType.OFF : OnOffType.ON; - this.notInRange = inverted ? OnOffType.ON : OnOffType.OFF; + this.inRange = OnOffType.from(!inverted); + this.notInRange = OnOffType.from(inverted); } private @Nullable QuantityType getParam(ProfileContext context, String param) { diff --git a/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/DecimalType.java b/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/DecimalType.java index ea7042812..f1886fc75 100644 --- a/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/DecimalType.java +++ b/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/DecimalType.java @@ -187,7 +187,7 @@ public class DecimalType extends Number implements PrimitiveType, State, Command @Override public @Nullable T as(@Nullable Class target) { if (target == OnOffType.class) { - return target.cast(equals(ZERO) ? OnOffType.OFF : OnOffType.ON); + return target.cast(OnOffType.from(!equals(ZERO))); } else if (target == PercentType.class) { return target.cast(new PercentType(toBigDecimal().multiply(BIG_DECIMAL_HUNDRED))); } else if (target == UpDownType.class) { diff --git a/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/HSBType.java b/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/HSBType.java index 4d3fcff5c..90715ae6b 100644 --- a/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/HSBType.java +++ b/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/HSBType.java @@ -273,7 +273,7 @@ public class HSBType extends PercentType implements ComplexType, State, Command public @Nullable T as(@Nullable Class target) { if (target == OnOffType.class) { // if brightness is not completely off, we consider the state to be on - return target.cast(PercentType.ZERO.equals(getBrightness()) ? OnOffType.OFF : OnOffType.ON); + return target.cast(OnOffType.from(!PercentType.ZERO.equals(getBrightness()))); } else if (target == DecimalType.class) { return target.cast( new DecimalType(getBrightness().toBigDecimal().divide(BIG_DECIMAL_HUNDRED, 8, RoundingMode.UP))); diff --git a/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/PercentType.java b/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/PercentType.java index be2ab26ec..712b8ac97 100644 --- a/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/PercentType.java +++ b/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/PercentType.java @@ -109,7 +109,7 @@ public class PercentType extends DecimalType { @Override public @Nullable T as(@Nullable Class target) { if (target == OnOffType.class) { - return target.cast(equals(ZERO) ? OnOffType.OFF : OnOffType.ON); + return target.cast(OnOffType.from(!equals(ZERO))); } else if (target == DecimalType.class) { return target.cast(new DecimalType(toBigDecimal().divide(BIG_DECIMAL_HUNDRED, 8, RoundingMode.UP))); } else if (target == UpDownType.class) { diff --git a/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/QuantityType.java b/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/QuantityType.java index 3563fe730..7369584c7 100644 --- a/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/QuantityType.java +++ b/bundles/org.openhab.core/src/main/java/org/openhab/core/library/types/QuantityType.java @@ -440,7 +440,7 @@ public class QuantityType> extends Number if (intValue() == 0) { return target.cast(OnOffType.OFF); } else if (Units.PERCENT.equals(getUnit())) { - return target.cast(toBigDecimal().compareTo(BigDecimal.ZERO) > 0 ? OnOffType.ON : OnOffType.OFF); + return target.cast(OnOffType.from(toBigDecimal().compareTo(BigDecimal.ZERO) > 0)); } else if (toBigDecimal().compareTo(BigDecimal.ONE) == 0) { return target.cast(OnOffType.ON); } else {