From 1437a2ac7d317da94fa4da674cb79b795c8b246a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ga=C3=ABl=20L=27hopital?= Date: Mon, 29 Apr 2024 01:32:55 +0200 Subject: [PATCH] Handling null WifiInformation (#16700) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Gaƫl L'hopital --- .../binding/freeboxos/internal/api/rest/APManager.java | 10 ++++++---- .../freeboxos/internal/handler/WifiStationHandler.java | 2 +- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/bundles/org.openhab.binding.freeboxos/src/main/java/org/openhab/binding/freeboxos/internal/api/rest/APManager.java b/bundles/org.openhab.binding.freeboxos/src/main/java/org/openhab/binding/freeboxos/internal/api/rest/APManager.java index 6fa4c1a3f09f..aa371888c503 100644 --- a/bundles/org.openhab.binding.freeboxos/src/main/java/org/openhab/binding/freeboxos/internal/api/rest/APManager.java +++ b/bundles/org.openhab.binding.freeboxos/src/main/java/org/openhab/binding/freeboxos/internal/api/rest/APManager.java @@ -46,14 +46,16 @@ public static record LanAccessPoint(String mac, String type, String uid, @Nullab long txBytes, // transmitted bytes (from Freebox to station) long txRate, // reception data rate (in bytes/s) long rxRate, // transmission data rate (in bytes/s) - WifiInformation wifiInformation) { + @Nullable WifiInformation wifiInformation) { - public int getSignal() { - return wifiInformation.signal(); + public int getRSSI() { + WifiInformation local = wifiInformation; + return local != null ? local.signal : 1; } public @Nullable String getSsid() { - return wifiInformation().ssid(); + WifiInformation local = wifiInformation; + return local != null ? local.ssid : null; } } diff --git a/bundles/org.openhab.binding.freeboxos/src/main/java/org/openhab/binding/freeboxos/internal/handler/WifiStationHandler.java b/bundles/org.openhab.binding.freeboxos/src/main/java/org/openhab/binding/freeboxos/internal/handler/WifiStationHandler.java index ce5b25773d19..02595ddd1777 100644 --- a/bundles/org.openhab.binding.freeboxos/src/main/java/org/openhab/binding/freeboxos/internal/handler/WifiStationHandler.java +++ b/bundles/org.openhab.binding.freeboxos/src/main/java/org/openhab/binding/freeboxos/internal/handler/WifiStationHandler.java @@ -73,7 +73,7 @@ protected void internalPoll() throws FreeboxException { LanAccessPoint lanAp = wifiHost.get().accessPoint(); if (lanAp != null) { updateChannelString(GROUP_WIFI, WIFI_HOST, "%s-%s".formatted(lanAp.type(), lanAp.uid())); - updateWifiStationChannels(lanAp.getSignal(), lanAp.getSsid(), lanAp.rxRate(), lanAp.txRate()); + updateWifiStationChannels(lanAp.getRSSI(), lanAp.getSsid(), lanAp.rxRate(), lanAp.txRate()); return; } }