From 39cb4fcaa3cd2d8ecdbb652da597c4faa24b7d64 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Hans-J=C3=B6rg=20Merk?= Date: Thu, 5 Nov 2020 20:58:41 +0100 Subject: [PATCH] [intesis] Fix channel state options not set when channel exists (#8963) MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Hans-Jörg Merk --- .../internal/handler/IntesisBoxHandler.java | 16 +++++++--------- .../internal/handler/IntesisHomeHandler.java | 16 ++++++++-------- 2 files changed, 15 insertions(+), 17 deletions(-) diff --git a/bundles/org.openhab.binding.intesis/src/main/java/org/openhab/binding/intesis/internal/handler/IntesisBoxHandler.java b/bundles/org.openhab.binding.intesis/src/main/java/org/openhab/binding/intesis/internal/handler/IntesisBoxHandler.java index eb363bac10..56ce19df3b 100644 --- a/bundles/org.openhab.binding.intesis/src/main/java/org/openhab/binding/intesis/internal/handler/IntesisBoxHandler.java +++ b/bundles/org.openhab.binding.intesis/src/main/java/org/openhab/binding/intesis/internal/handler/IntesisBoxHandler.java @@ -347,16 +347,14 @@ public class IntesisBoxHandler extends BaseThingHandler implements IntesisBoxCha .withType(channelTypeUID).withKind(ChannelKind.STATE).build(); thingBuilder.withChannel(channel); updateThing(thingBuilder.build()); - - if (limits.containsKey(channelId)) { - List options = new ArrayList<>(); - for (String mode : limits.get(channelId)) { - options.add(new StateOption(mode, - mode.substring(0, 1).toUpperCase() + mode.substring(1).toLowerCase())); - } - intesisStateDescriptionProvider.setStateOptions(new ChannelUID(getThing().getUID(), channelId), - options); + } + if (limits.containsKey(channelId)) { + List options = new ArrayList<>(); + for (String mode : limits.get(channelId)) { + options.add( + new StateOption(mode, mode.substring(0, 1).toUpperCase() + mode.substring(1).toLowerCase())); } + intesisStateDescriptionProvider.setStateOptions(new ChannelUID(getThing().getUID(), channelId), options); } } diff --git a/bundles/org.openhab.binding.intesis/src/main/java/org/openhab/binding/intesis/internal/handler/IntesisHomeHandler.java b/bundles/org.openhab.binding.intesis/src/main/java/org/openhab/binding/intesis/internal/handler/IntesisHomeHandler.java index 194a50db15..35aea4fd95 100644 --- a/bundles/org.openhab.binding.intesis/src/main/java/org/openhab/binding/intesis/internal/handler/IntesisHomeHandler.java +++ b/bundles/org.openhab.binding.intesis/src/main/java/org/openhab/binding/intesis/internal/handler/IntesisHomeHandler.java @@ -262,14 +262,14 @@ public class IntesisHomeHandler extends BaseThingHandler { .withType(channelTypeUID).withKind(ChannelKind.STATE).build(); thingBuilder.withChannel(channel); updateThing(thingBuilder.build()); - - if (options != null) { - final List stateOptions = options.stream() - .map(e -> new StateOption(e, e.substring(0, 1) + e.substring(1).toLowerCase())) - .collect(Collectors.toList()); - logger.trace("StateOptions : '{}'", stateOptions); - intesisStateDescriptionProvider.setStateOptions(channel.getUID(), stateOptions); - } + } + if (options != null) { + final List stateOptions = options.stream() + .map(e -> new StateOption(e, e.substring(0, 1) + e.substring(1).toLowerCase())) + .collect(Collectors.toList()); + logger.trace("StateOptions : '{}'", stateOptions); + intesisStateDescriptionProvider.setStateOptions(new ChannelUID(getThing().getUID(), channelId), + stateOptions); } } -- 2.47.3