From: lolodomo Date: Tue, 16 Jul 2024 15:52:57 +0000 (+0200) Subject: [freeboxos] Fix creation of properties and dynamic channels at init (#17081) X-Git-Url: https://git.basschouten.com/?a=commitdiff_plain;h=8e570c5afada140abe8ecf279906e0ec5cbb1b59;p=openhab-addons.git [freeboxos] Fix creation of properties and dynamic channels at init (#17081) This was bypassed in bridgeStatusChanged. Fix #17078 Fix #17079 Signed-off-by: Laurent Garnier --- diff --git a/bundles/org.openhab.binding.freeboxos/src/main/java/org/openhab/binding/freeboxos/internal/handler/ApiConsumerHandler.java b/bundles/org.openhab.binding.freeboxos/src/main/java/org/openhab/binding/freeboxos/internal/handler/ApiConsumerHandler.java index 4e8406bc55..a4052acec0 100644 --- a/bundles/org.openhab.binding.freeboxos/src/main/java/org/openhab/binding/freeboxos/internal/handler/ApiConsumerHandler.java +++ b/bundles/org.openhab.binding.freeboxos/src/main/java/org/openhab/binding/freeboxos/internal/handler/ApiConsumerHandler.java @@ -58,7 +58,7 @@ import org.slf4j.LoggerFactory; import inet.ipaddr.IPAddress; /** - * The {@link ServerHandler} is a base abstract class for all devices made available by the FreeboxOs bridge + * The {@link ApiConsumerHandler} is a base abstract class for all devices made available by the FreeboxOs bridge * * @author Gaël L'hopital - Initial contribution */ @@ -80,7 +80,10 @@ public abstract class ApiConsumerHandler extends BaseThingHandler implements Api if (bridgeHandler == null) { return; } + initializeOnceBridgeOnline(bridgeHandler); + } + private void initializeOnceBridgeOnline(FreeboxOsHandler bridgeHandler) { Map properties = editProperties(); if (properties.isEmpty()) { try { @@ -132,8 +135,9 @@ public abstract class ApiConsumerHandler extends BaseThingHandler implements Api @Override public void bridgeStatusChanged(ThingStatusInfo bridgeStatusInfo) { - if (checkBridgeHandler() != null) { - startRefreshJob(); + FreeboxOsHandler bridgeHandler = checkBridgeHandler(); + if (bridgeHandler != null) { + initializeOnceBridgeOnline(bridgeHandler); } else { stopJobs(); }