diff --git a/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriBlindHandler.java b/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriBlindHandler.java index 6b3bdf35a..d6a2204b1 100644 --- a/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriBlindHandler.java +++ b/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriBlindHandler.java @@ -15,6 +15,7 @@ package org.openhab.binding.tradfri.internal.handler; import static org.openhab.binding.tradfri.internal.TradfriBindingConstants.*; import org.eclipse.jdt.annotation.NonNullByDefault; +import org.openhab.binding.tradfri.internal.TradfriCoapClient; import org.openhab.binding.tradfri.internal.model.TradfriBlindData; import org.openhab.core.library.types.DecimalType; import org.openhab.core.library.types.OnOffType; @@ -86,8 +87,13 @@ public class TradfriBlindHandler extends TradfriThingHandler { public void handleCommand(ChannelUID channelUID, Command command) { if (active) { if (command instanceof RefreshType) { - logger.debug("Refreshing channel {}", channelUID); - coapClient.asyncGet(this); + TradfriCoapClient coapClient = this.coapClient; + if (coapClient != null) { + logger.debug("Refreshing channel {}", channelUID); + coapClient.asyncGet(this); + } else { + logger.debug("coapClient is null!"); + } return; } diff --git a/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriControllerHandler.java b/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriControllerHandler.java index 68f5aa27c..72e56ae25 100644 --- a/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriControllerHandler.java +++ b/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriControllerHandler.java @@ -16,6 +16,7 @@ import static org.openhab.binding.tradfri.internal.TradfriBindingConstants.*; import org.eclipse.jdt.annotation.NonNullByDefault; import org.eclipse.jdt.annotation.Nullable; +import org.openhab.binding.tradfri.internal.TradfriCoapClient; import org.openhab.binding.tradfri.internal.model.TradfriControllerData; import org.openhab.core.library.types.DecimalType; import org.openhab.core.library.types.OnOffType; @@ -80,8 +81,13 @@ public class TradfriControllerHandler extends TradfriThingHandler { public void handleCommand(ChannelUID channelUID, Command command) { if (active) { if (command instanceof RefreshType) { - logger.debug("Refreshing channel {}", channelUID); - coapClient.asyncGet(this); + TradfriCoapClient coapClient = this.coapClient; + if (coapClient != null) { + logger.debug("Refreshing channel {}", channelUID); + coapClient.asyncGet(this); + } else { + logger.debug("coapClient is null!"); + } return; } diff --git a/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriLightHandler.java b/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriLightHandler.java index 2be125bc9..545737936 100644 --- a/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriLightHandler.java +++ b/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriLightHandler.java @@ -16,6 +16,7 @@ import static org.openhab.binding.tradfri.internal.TradfriBindingConstants.*; import org.eclipse.jdt.annotation.NonNullByDefault; import org.eclipse.jdt.annotation.Nullable; +import org.openhab.binding.tradfri.internal.TradfriCoapClient; import org.openhab.binding.tradfri.internal.model.TradfriLightData; import org.openhab.core.library.types.HSBType; import org.openhab.core.library.types.IncreaseDecreaseType; @@ -126,8 +127,13 @@ public class TradfriLightHandler extends TradfriThingHandler { public void handleCommand(ChannelUID channelUID, Command command) { if (active) { if (command instanceof RefreshType) { - logger.debug("Refreshing channel {}", channelUID); - coapClient.asyncGet(this); + TradfriCoapClient coapClient = this.coapClient; + if (coapClient != null) { + logger.debug("Refreshing channel {}", channelUID); + coapClient.asyncGet(this); + } else { + logger.debug("coapClient is null!"); + } return; } diff --git a/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriPlugHandler.java b/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriPlugHandler.java index 52a15db25..8de4764f5 100644 --- a/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriPlugHandler.java +++ b/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriPlugHandler.java @@ -15,6 +15,7 @@ package org.openhab.binding.tradfri.internal.handler; import static org.openhab.binding.tradfri.internal.TradfriBindingConstants.CHANNEL_POWER; import org.eclipse.jdt.annotation.NonNullByDefault; +import org.openhab.binding.tradfri.internal.TradfriCoapClient; import org.openhab.binding.tradfri.internal.model.TradfriPlugData; import org.openhab.core.library.types.OnOffType; import org.openhab.core.thing.ChannelUID; @@ -62,8 +63,13 @@ public class TradfriPlugHandler extends TradfriThingHandler { public void handleCommand(ChannelUID channelUID, Command command) { if (active) { if (command instanceof RefreshType) { - logger.debug("Refreshing channel {}", channelUID); - coapClient.asyncGet(this); + TradfriCoapClient coapClient = this.coapClient; + if (coapClient != null) { + logger.debug("Refreshing channel {}", channelUID); + coapClient.asyncGet(this); + } else { + logger.debug("coapClient is null!"); + } return; } diff --git a/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriSensorHandler.java b/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriSensorHandler.java index a94023698..f32093f2b 100644 --- a/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriSensorHandler.java +++ b/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriSensorHandler.java @@ -15,6 +15,7 @@ package org.openhab.binding.tradfri.internal.handler; import static org.openhab.binding.tradfri.internal.TradfriBindingConstants.*; import org.eclipse.jdt.annotation.NonNullByDefault; +import org.openhab.binding.tradfri.internal.TradfriCoapClient; import org.openhab.binding.tradfri.internal.model.TradfriSensorData; import org.openhab.core.library.types.DecimalType; import org.openhab.core.library.types.OnOffType; @@ -71,8 +72,13 @@ public class TradfriSensorHandler extends TradfriThingHandler { public void handleCommand(ChannelUID channelUID, Command command) { if (active) { if (command instanceof RefreshType) { - logger.debug("Refreshing channel {}", channelUID); - coapClient.asyncGet(this); + TradfriCoapClient coapClient = this.coapClient; + if (coapClient != null) { + logger.debug("Refreshing channel {}", channelUID); + coapClient.asyncGet(this); + } else { + logger.debug("coapClient is null!"); + } return; } diff --git a/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriThingHandler.java b/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriThingHandler.java index 7cd5515a4..520eae038 100644 --- a/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriThingHandler.java +++ b/bundles/org.openhab.binding.tradfri/src/main/java/org/openhab/binding/tradfri/internal/handler/TradfriThingHandler.java @@ -51,7 +51,7 @@ public abstract class TradfriThingHandler extends BaseThingHandler implements Co // used to check whether we have already been disposed when receiving data asynchronously protected volatile boolean active; - protected @NonNullByDefault({}) TradfriCoapClient coapClient; + protected @Nullable TradfriCoapClient coapClient; private @Nullable CoapObserveRelation observeRelation; @@ -135,8 +135,13 @@ public abstract class TradfriThingHandler extends BaseThingHandler implements Co } protected void set(String payload) { - logger.debug("Sending payload: {}", payload); - coapClient.asyncPut(payload, this, scheduler); + TradfriCoapClient coapClient = this.coapClient; + if (coapClient != null) { + logger.debug("Sending payload: {}", payload); + coapClient.asyncPut(payload, this, scheduler); + } else { + logger.debug("coapClient is null!"); + } } protected void updateDeviceProperties(TradfriDeviceData state) {