]> git.basschouten.com Git - openhab-addons.git/commitdiff
Refactor usage of deprecated HSBType.getRGB (#14883)
authorJacob Laursen <jacob-github@vindvejr.dk>
Sat, 29 Apr 2023 08:54:36 +0000 (10:54 +0200)
committerGitHub <noreply@github.com>
Sat, 29 Apr 2023 08:54:36 +0000 (10:54 +0200)
Signed-off-by: Jacob Laursen <jacob-github@vindvejr.dk>
bundles/org.openhab.binding.hdpowerview/src/main/java/org/openhab/binding/hdpowerview/internal/dto/Color.java
bundles/org.openhab.binding.hdpowerview/src/main/java/org/openhab/binding/hdpowerview/internal/handler/HDPowerViewRepeaterHandler.java

index d09a0291ac73e093a5e8e67efb3ffacb887dd748..631cfb6ba75406b9544423f7cad1bfc1c0cac773 100644 (file)
@@ -13,7 +13,6 @@
 package org.openhab.binding.hdpowerview.internal.dto;
 
 import org.eclipse.jdt.annotation.NonNullByDefault;
-import org.openhab.core.library.types.HSBType;
 
 /**
  * Color and brightness information for HD PowerView repeater
@@ -27,20 +26,12 @@ public class Color {
     public int green;
     public int blue;
 
-    public Color(int brightness, HSBType hsbType) {
-        this.brightness = brightness;
-        int rgb = hsbType.getRGB();
-        java.awt.Color color = new java.awt.Color(rgb);
-        red = color.getRed();
-        green = color.getGreen();
-        blue = color.getBlue();
+    public Color(int brightness, int srgb) {
+        this(brightness, new java.awt.Color(srgb));
     }
 
     public Color(int brightness, java.awt.Color color) {
-        this.brightness = brightness;
-        red = color.getRed();
-        green = color.getGreen();
-        blue = color.getBlue();
+        this(brightness, color.getRed(), color.getGreen(), color.getBlue());
     }
 
     public Color(int brightness, int red, int green, int blue) {
index d5516e09361136e56fdbc7998950fc58f09a5d3b..1d806fb9bf982c026b7bb110d62cd8ce5424f2dc 100644 (file)
@@ -38,6 +38,7 @@ import org.openhab.core.thing.ThingStatus;
 import org.openhab.core.thing.ThingStatusDetail;
 import org.openhab.core.types.Command;
 import org.openhab.core.types.UnDefType;
+import org.openhab.core.util.ColorUtil;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -99,11 +100,10 @@ public class HDPowerViewRepeaterHandler extends AbstractHubbedThingHandler {
 
             switch (channelUID.getId()) {
                 case CHANNEL_REPEATER_COLOR:
-                    if (command instanceof HSBType) {
+                    if (command instanceof HSBType hsbCommand) {
                         Color currentColor = webTargets.getRepeater(repeaterId).color;
                         if (currentColor != null) {
-                            HSBType hsbCommand = (HSBType) command;
-                            var color = new Color(currentColor.brightness, hsbCommand);
+                            var color = new Color(currentColor.brightness, ColorUtil.hsbTosRgb(hsbCommand));
                             repeaterData = webTargets.setRepeaterColor(repeaterId, color);
                             scheduler.submit(() -> updatePropertyAndStates(repeaterData));
                         }
@@ -119,11 +119,10 @@ public class HDPowerViewRepeaterHandler extends AbstractHubbedThingHandler {
                     }
                     break;
                 case CHANNEL_REPEATER_BRIGHTNESS:
-                    if (command instanceof PercentType) {
+                    if (command instanceof PercentType brightnessCommand) {
                         Color currentColor = webTargets.getRepeater(repeaterId).color;
                         if (currentColor != null) {
-                            PercentType brightness = (PercentType) command;
-                            var color = new Color(brightness.intValue(), currentColor.red, currentColor.green,
+                            var color = new Color(brightnessCommand.intValue(), currentColor.red, currentColor.green,
                                     currentColor.blue);
                             repeaterData = webTargets.setRepeaterColor(repeaterId, color);
                             scheduler.submit(() -> updatePropertyAndStates(repeaterData));
@@ -131,8 +130,8 @@ public class HDPowerViewRepeaterHandler extends AbstractHubbedThingHandler {
                     }
                     break;
                 case CHANNEL_REPEATER_IDENTIFY:
-                    if (command instanceof StringType) {
-                        if (COMMAND_IDENTIFY.equals(((StringType) command).toString())) {
+                    if (command instanceof StringType stringCommand) {
+                        if (COMMAND_IDENTIFY.equals(stringCommand.toString())) {
                             repeaterData = webTargets.identifyRepeater(repeaterId);
                             scheduler.submit(() -> updatePropertyAndStates(repeaterData));
                             cancelResetIdentifyStateJob();