From ac7b5eae4dd6e7cdc8b75380694c26d215d06266 Mon Sep 17 00:00:00 2001 From: lolodomo Date: Fri, 28 May 2021 15:01:50 +0200 Subject: [PATCH] [homeconnect] Build state options with a unique item for unsupported programs (#10754) Apply to spin speed, temperature and drying taget channels Fix #10701 Signed-off-by: Laurent Garnier --- .../AbstractHomeConnectThingHandler.java | 49 +++++++++++++++---- 1 file changed, 40 insertions(+), 9 deletions(-) diff --git a/bundles/org.openhab.binding.homeconnect/src/main/java/org/openhab/binding/homeconnect/internal/handler/AbstractHomeConnectThingHandler.java b/bundles/org.openhab.binding.homeconnect/src/main/java/org/openhab/binding/homeconnect/internal/handler/AbstractHomeConnectThingHandler.java index c9394f919..bfdf5ad06 100644 --- a/bundles/org.openhab.binding.homeconnect/src/main/java/org/openhab/binding/homeconnect/internal/handler/AbstractHomeConnectThingHandler.java +++ b/bundles/org.openhab.binding.homeconnect/src/main/java/org/openhab/binding/homeconnect/internal/handler/AbstractHomeConnectThingHandler.java @@ -860,7 +860,7 @@ public abstract class AbstractHomeConnectThingHandler extends BaseThingHandler i try { String programKey = event.getValue(); if (programKey != null) { - updateProgramOptionsStateDescriptions(programKey); + updateProgramOptionsStateDescriptions(programKey, null); } } catch (CommunicationException | ApplianceOfflineException | AuthorizationException e) { logger.debug("Could not update program options. {}", e.getMessage()); @@ -1028,7 +1028,7 @@ public abstract class AbstractHomeConnectThingHandler extends BaseThingHandler i Program program = apiClient.get().getSelectedProgram(getThingHaId()); if (program != null) { - updateProgramOptionsStateDescriptions(program.getKey()); + updateProgramOptionsStateDescriptions(program.getKey(), program.getOptions()); processProgramOptions(program.getOptions()); return new StringType(program.getKey()); @@ -1314,7 +1314,7 @@ public abstract class AbstractHomeConnectThingHandler extends BaseThingHandler i return mapStringType(value); } - protected void updateProgramOptionsStateDescriptions(String programKey) + protected void updateProgramOptionsStateDescriptions(String programKey, @Nullable List