diff --git a/bundles/org.openhab.binding.tellstick/src/main/java/org/openhab/binding/tellstick/internal/local/TelldusLocalBridgeHandler.java b/bundles/org.openhab.binding.tellstick/src/main/java/org/openhab/binding/tellstick/internal/local/TelldusLocalBridgeHandler.java index 9dda967ca78..8cf7f35f40a 100644 --- a/bundles/org.openhab.binding.tellstick/src/main/java/org/openhab/binding/tellstick/internal/local/TelldusLocalBridgeHandler.java +++ b/bundles/org.openhab.binding.tellstick/src/main/java/org/openhab/binding/tellstick/internal/local/TelldusLocalBridgeHandler.java @@ -111,7 +111,7 @@ public class TelldusLocalBridgeHandler extends BaseBridgeHandler implements Tell throws TellstickException, InterruptedException { TellstickLocalDevicesDTO newList = controller .callRestMethod(TelldusLocalDeviceController.HTTP_LOCAL_API_DEVICES, TellstickLocalDevicesDTO.class); - if (newList.getDevices() != null) { + if (newList != null && newList.getDevices() != null) { logger.debug("Device list {}", newList.getDevices()); if (previouslist == null) { for (TellstickLocalDeviceDTO device : newList.getDevices()) { @@ -167,8 +167,8 @@ public class TelldusLocalBridgeHandler extends BaseBridgeHandler implements Tell throws TellstickException, InterruptedException { TellstickLocalSensorsDTO newList = controller .callRestMethod(TelldusLocalDeviceController.HTTP_LOCAL_API_SENSORS, TellstickLocalSensorsDTO.class); - logger.debug("Updated sensors:{}", newList.getSensors()); - if (newList.getSensors() != null) { + if (newList != null && newList.getSensors() != null) { + logger.debug("Updated sensors:{}", newList.getSensors()); if (previouslist == null) { this.sensorList = newList; for (TellstickLocalSensorDTO sensor : sensorList.getSensors()) { diff --git a/bundles/org.openhab.binding.tellstick/src/main/java/org/openhab/binding/tellstick/internal/local/TelldusLocalDeviceController.java b/bundles/org.openhab.binding.tellstick/src/main/java/org/openhab/binding/tellstick/internal/local/TelldusLocalDeviceController.java index a9fd1bb7b14..307d20c208d 100644 --- a/bundles/org.openhab.binding.tellstick/src/main/java/org/openhab/binding/tellstick/internal/local/TelldusLocalDeviceController.java +++ b/bundles/org.openhab.binding.tellstick/src/main/java/org/openhab/binding/tellstick/internal/local/TelldusLocalDeviceController.java @@ -18,6 +18,7 @@ import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; +import org.eclipse.jdt.annotation.Nullable; import org.eclipse.jetty.client.HttpClient; import org.eclipse.jetty.client.api.ContentResponse; import org.eclipse.jetty.client.api.Request; @@ -249,7 +250,8 @@ public class TelldusLocalDeviceController implements DeviceChangeListener, Senso setLastSend(newDevices.getTimestamp()); } - T callRestMethod(String uri, Class response) throws TelldusLocalException, InterruptedException { + @Nullable T callRestMethod(String uri, Class response) throws TelldusLocalException, InterruptedException { + @Nullable T resultObj = null; try { for (int i = 0; i < MAX_RETRIES; i++) {