]> git.basschouten.com Git - openhab-addons.git/commitdiff
Remove deprecated handleUpdate from ThingHandler (#8558)
authorWouter Born <github@maindrain.net>
Thu, 24 Sep 2020 15:50:47 +0000 (17:50 +0200)
committerGitHub <noreply@github.com>
Thu, 24 Sep 2020 15:50:47 +0000 (17:50 +0200)
The handleUpdate method was deprecated when profiles were introduced (see eclipse-archived/smarthome#4108).
Instead the "follow profile" can be used which forwards item updates as commands to handlers.
This profile works with any binding instead of only those that implement the handleUpdate method.

Related to openhab/openhab-core#1669

Signed-off-by: Wouter Born <github@maindrain.net>
16 files changed:
bundles/org.openhab.binding.cm11a/src/main/java/org/openhab/binding/cm11a/internal/handler/Cm11aBridgeHandler.java
bundles/org.openhab.binding.knx/src/main/java/org/openhab/binding/knx/internal/handler/KNXBridgeBaseThingHandler.java
bundles/org.openhab.binding.lutron/src/main/java/org/openhab/binding/lutron/internal/radiora/handler/DimmerHandler.java
bundles/org.openhab.binding.mihome/src/main/java/org/openhab/binding/mihome/internal/handler/XiaomiActorGatewayHandler.java
bundles/org.openhab.binding.mihome/src/main/java/org/openhab/binding/mihome/internal/handler/XiaomiSensorBaseHandlerWithTimer.java
bundles/org.openhab.binding.phc/src/main/java/org/openhab/binding/phc/internal/handler/PHCHandler.java
bundles/org.openhab.binding.tellstick/src/main/java/org/openhab/binding/tellstick/internal/live/TelldusLiveBridgeHandler.java
bundles/org.openhab.transform.exec/src/main/java/org/openhab/transform/exec/internal/profiles/ExecTransformationProfile.java
bundles/org.openhab.transform.javascript/src/main/java/org/openhab/transform/javascript/internal/profiles/JavascriptTransformationProfile.java
bundles/org.openhab.transform.jinja/src/main/java/org/openhab/transform/jinja/internal/profiles/JinjaTransformationProfile.java
bundles/org.openhab.transform.jsonpath/src/main/java/org/openhab/transform/jsonpath/internal/profiles/JSonPathTransformationProfile.java
bundles/org.openhab.transform.map/src/main/java/org/openhab/transform/map/internal/profiles/MapTransformationProfile.java
bundles/org.openhab.transform.regex/src/main/java/org/openhab/transform/regex/internal/profiles/RegexTransformationProfile.java
bundles/org.openhab.transform.scale/src/main/java/org/openhab/transform/scale/internal/profiles/ScaleTransformationProfile.java
bundles/org.openhab.transform.xpath/src/main/java/org/openhab/transform/xpath/internal/profiles/XPathTransformationProfile.java
bundles/org.openhab.transform.xslt/src/main/java/org/openhab/transform/xslt/internal/profiles/XSLTTransformationProfile.java

index 9d4f672a48ec861f523f7f9e953e1820d9d0f0cf..9d58f96e603e477a0e0fb5c53cb139df756798ce 100644 (file)
@@ -202,20 +202,20 @@ public class Cm11aBridgeHandler extends BaseBridgeHandler implements ReceivedDat
         // Perform appropriate update based on X10Command received
         // Handle ON/OFF commands
         if (cmd == X10ReceivedData.X10COMMAND.ON) {
-            handleUpdate(channelUid, OnOffType.ON);
+            updateState(channelUid, OnOffType.ON);
             handler.setCurrentState(OnOffType.ON);
         } else if (cmd == X10ReceivedData.X10COMMAND.OFF) {
-            handleUpdate(channelUid, OnOffType.OFF);
+            updateState(channelUid, OnOffType.OFF);
             handler.setCurrentState(OnOffType.OFF);
             // Handle DIM/Bright commands
         } else if (cmd == X10ReceivedData.X10COMMAND.DIM) {
             State newState = handler.addDimsToCurrentState(dims);
-            handleUpdate(channelUid, newState);
+            updateState(channelUid, newState);
             handler.setCurrentState(newState);
             logger.debug("Current state set to: {}", handler.getCurrentState().toFullString());
         } else if (cmd == X10ReceivedData.X10COMMAND.BRIGHT) {
             State newState = handler.addBrightsToCurrentState(dims);
-            handleUpdate(channelUid, newState);
+            updateState(channelUid, newState);
             handler.setCurrentState(newState);
             logger.debug("Current state set to: {}", handler.getCurrentState().toFullString());
         } else {
@@ -223,16 +223,6 @@ public class Cm11aBridgeHandler extends BaseBridgeHandler implements ReceivedDat
         }
     }
 
-    /**
-     * The default implementation of this method doesn't do anything. We need it to update the ui as done by the
-     * updateState function.
-     * And, update state can not be called directly because it is protected
-     */
-    @Override
-    public void handleUpdate(ChannelUID channelUID, State newState) {
-        updateState(channelUID, newState);
-    }
-
     /**
      * Get the X10Interface
      *
index 305857ed39ca5a929956f5c17d9928330b312e48..465e13bb329fc021a57be167243f2f6a4b6451a8 100644 (file)
@@ -27,7 +27,6 @@ import org.openhab.core.thing.ThingStatus;
 import org.openhab.core.thing.ThingStatusDetail;
 import org.openhab.core.thing.binding.BaseBridgeHandler;
 import org.openhab.core.types.Command;
-import org.openhab.core.types.State;
 
 import tuwien.auto.calimero.IndividualAddress;
 import tuwien.auto.calimero.mgmt.Destination;
@@ -51,11 +50,6 @@ public abstract class KNXBridgeBaseThingHandler extends BaseBridgeHandler implem
 
     protected abstract KNXClient getClient();
 
-    @Override
-    public void handleUpdate(ChannelUID channelUID, State newState) {
-        // Nothing to do here
-    }
-
     @Override
     public void handleCommand(ChannelUID channelUID, Command command) {
         // Nothing to do here
index 99e429b1e02d110b1a0b4eb279e551db7835c37a..575c736413762cc637b30ed77ac3459eccffa1c7 100644 (file)
@@ -27,7 +27,6 @@ import org.openhab.core.library.types.PercentType;
 import org.openhab.core.thing.ChannelUID;
 import org.openhab.core.thing.Thing;
 import org.openhab.core.types.Command;
-import org.openhab.core.types.State;
 
 /**
  * Handler for RadioRA dimmers
@@ -76,14 +75,6 @@ public class DimmerHandler extends LutronHandler {
         }
     }
 
-    @Override
-    public void handleUpdate(ChannelUID channelUID, State newState) {
-        if (LutronBindingConstants.CHANNEL_LIGHTLEVEL.equals(channelUID.getId())) {
-            PercentType percent = (PercentType) newState.as(PercentType.class);
-            updateInternalState(percent.intValue());
-        }
-    }
-
     @Override
     public void handleFeedback(RadioRAFeedback feedback) {
         if (feedback instanceof LocalZoneChangeFeedback) {
index eb9a44d5eeef1f200d1b2497b4d78fc9cc5ad193..de1e9032480cb75246b6598bedcb6098f93297a1 100644 (file)
@@ -22,7 +22,6 @@ import org.openhab.core.library.types.PercentType;
 import org.openhab.core.thing.ChannelUID;
 import org.openhab.core.thing.Thing;
 import org.openhab.core.types.Command;
-import org.openhab.core.types.State;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -127,28 +126,6 @@ public class XiaomiActorGatewayHandler extends XiaomiActorBaseHandler {
         logger.debug("Changed volume to {}", lastVolume);
     }
 
-    @Override
-    public void handleUpdate(ChannelUID channelUID, State newState) {
-        logger.debug("Update {} for channel {} received", newState, channelUID);
-        switch (channelUID.getId()) {
-            case CHANNEL_BRIGHTNESS:
-                if (newState instanceof PercentType) {
-                    lastBrigthness = ((PercentType) newState).intValue();
-                }
-                break;
-            case CHANNEL_COLOR:
-                if (newState instanceof HSBType) {
-                    lastColor = ((HSBType) newState).getRGB();
-                }
-                break;
-            case CHANNEL_GATEWAY_VOLUME:
-                if (newState instanceof DecimalType) {
-                    updateLastVolume((DecimalType) newState);
-                }
-                break;
-        }
-    }
-
     @Override
     void parseReport(JsonObject data) {
         parseDefault(data);
index 09087dc17ceed2081c1b6c4bd42cfb220c5ad86f..9be9f38da8172fe736a9d0c10f2e1e782ea45310 100644 (file)
@@ -16,9 +16,7 @@ import java.util.Timer;
 import java.util.TimerTask;
 
 import org.openhab.core.library.types.DecimalType;
-import org.openhab.core.thing.ChannelUID;
 import org.openhab.core.thing.Thing;
-import org.openhab.core.types.State;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -87,14 +85,4 @@ public abstract class XiaomiSensorBaseHandlerWithTimer extends XiaomiSensorBaseH
             timerSetpoint = defaultTimer;
         }
     }
-
-    @Override
-    public void handleUpdate(ChannelUID channelUID, State newState) {
-        if (setpointChannel.equals(channelUID.getId())) {
-            if (newState instanceof DecimalType) {
-                logger.debug("Received update for timer setpoint channel: {}", newState);
-                timerSetpoint = ((DecimalType) newState).intValue();
-            }
-        }
-    }
 }
index 4f715405a1238b14aeedae3c352239b0c0b33696..b718eb6851f4074ff1a0328c21846a9947dd118e 100644 (file)
@@ -20,7 +20,6 @@ import java.util.Map;
 import java.util.Map.Entry;
 
 import org.openhab.core.config.core.Configuration;
-import org.openhab.core.library.types.DecimalType;
 import org.openhab.core.library.types.OnOffType;
 import org.openhab.core.library.types.PercentType;
 import org.openhab.core.library.types.StopMoveType;
@@ -125,14 +124,6 @@ public class PHCHandler extends BaseThingHandler {
         }
     }
 
-    @Override
-    public void handleUpdate(ChannelUID channelUID, State newState) {
-        if (CHANNELS_JRM_TIME.equals(channelUID.getGroupId())) {
-            times[Integer
-                    .parseInt(channelUID.getIdWithoutGroup())] = (short) (((DecimalType) newState).floatValue() * 10);
-        }
-    }
-
     @Override
     public void handleConfigurationUpdate(Map<String, Object> configurationParameters) {
         if (isInitialized()) { // prevents change of address
index 7e4a96615aa6bcb3dfa80f13f8b6c23013766a29..f534fe319325488ab047781ba6cfb58a7ba9b804 100644 (file)
@@ -36,7 +36,6 @@ import org.openhab.core.thing.ThingStatusDetail;
 import org.openhab.core.thing.binding.BaseBridgeHandler;
 import org.openhab.core.types.Command;
 import org.openhab.core.types.RefreshType;
-import org.openhab.core.types.State;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.tellstick.device.TellstickDeviceEvent;
@@ -247,11 +246,6 @@ public class TelldusLiveBridgeHandler extends BaseBridgeHandler implements Telld
         super.handleRemoval();
     }
 
-    @Override
-    public void handleUpdate(ChannelUID channelUID, State newState) {
-        super.handleUpdate(channelUID, newState);
-    }
-
     @Override
     public void thingUpdated(Thing thing) {
         super.thingUpdated(thing);
index 6e14d78e1f87c7383090e19f086a87036b56d9f9..91d662f5151428f54d3a8d9f46981ce496537c44 100644 (file)
@@ -82,7 +82,6 @@ public class ExecTransformationProfile implements StateProfile {
 
     @Override
     public void onStateUpdateFromItem(State state) {
-        callback.handleUpdate(state);
     }
 
     @Override
index 112aae1d1688ba774e542e41e31d647601ae5a6c..93e7b4624b9edf0ecf09d3e2ffcf3aaf669529c7 100644 (file)
@@ -83,7 +83,6 @@ public class JinjaTransformationProfile implements StateProfile {
 
     @Override
     public void onStateUpdateFromItem(State state) {
-        callback.handleUpdate(state);
     }
 
     @Override
index b01a3d0b911b98914b8c869589b882c177090ed4..1579017e823db0f22cff3181ca8207b217d6e5a9 100644 (file)
@@ -84,7 +84,6 @@ public class JSonPathTransformationProfile implements StateProfile {
 
     @Override
     public void onStateUpdateFromItem(State state) {
-        callback.handleUpdate(state);
     }
 
     @Override
index a26eee9b43f23251a3267ea229465b3d5460132a..2d16366d61531561916671458f3f3c438bd94a00 100644 (file)
@@ -83,7 +83,6 @@ public class MapTransformationProfile implements StateProfile {
 
     @Override
     public void onStateUpdateFromItem(State state) {
-        callback.handleUpdate(state);
     }
 
     @Override
index 9b649753b35402ad275ecd77ef3e1ab39f6d285b..423a5ef9aab7984f982691e3732400e5b0af504e 100644 (file)
@@ -83,7 +83,6 @@ public class RegexTransformationProfile implements StateProfile {
 
     @Override
     public void onStateUpdateFromItem(State state) {
-        callback.handleUpdate(state);
     }
 
     @Override
index 46dcf45485244a085ce9288e0a16a24972176ace..5b25d2c79c916df1f725e42424597e9fa2bd974e 100644 (file)
@@ -83,7 +83,6 @@ public class ScaleTransformationProfile implements StateProfile {
 
     @Override
     public void onStateUpdateFromItem(State state) {
-        callback.handleUpdate(state);
     }
 
     @Override
index 99cf0b336992a23e034e57e403a88fbf23237856..9c4d620970fca9b8841052d93a20aded82ca5c4f 100644 (file)
@@ -83,7 +83,6 @@ public class XPathTransformationProfile implements StateProfile {
 
     @Override
     public void onStateUpdateFromItem(State state) {
-        callback.handleUpdate(state);
     }
 
     @Override
index f9dec4ad3c6e20ca06d7a1324d6e925d33a9454c..8e1f001d5e1ae5146ee63fda5a5a0c30b0dcfaee 100644 (file)
@@ -83,7 +83,6 @@ public class XSLTTransformationProfile implements StateProfile {
 
     @Override
     public void onStateUpdateFromItem(State state) {
-        callback.handleUpdate(state);
     }
 
     @Override