From 271bd3913c876efe0ef4bce6b5f802329a9758ad Mon Sep 17 00:00:00 2001 From: bsamuels Date: Tue, 13 Feb 2018 16:12:05 -0600 Subject: [PATCH] Check broadlink map before finding device to call for null. Initialize broadlink Map on discover. --- pom.xml | 2 +- .../HABridge/plugins/broadlink/BroadlinkHome.java | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 130f9ad..3ad9d0e 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ com.bwssystems.HABridge ha-bridge - 5.2.0RC16 + 5.2.0RC17 jar HA Bridge diff --git a/src/main/java/com/bwssystems/HABridge/plugins/broadlink/BroadlinkHome.java b/src/main/java/com/bwssystems/HABridge/plugins/broadlink/BroadlinkHome.java index e573ab4..314a140 100644 --- a/src/main/java/com/bwssystems/HABridge/plugins/broadlink/BroadlinkHome.java +++ b/src/main/java/com/bwssystems/HABridge/plugins/broadlink/BroadlinkHome.java @@ -108,7 +108,7 @@ public class BroadlinkHome implements Home { + "\",\"description\": \"Should not get here, no LifxDevices configured\", \"parameter\": \"/lights/" + lightId + "state\"}}]"; - } else { + } else if(broadlinkMap != null) { BroadlinkEntry broadlinkCommand = null; broadlinkCommand = new Gson().fromJson(anItem.getItem().getAsString(), BroadlinkEntry.class); BLDevice theDevice = broadlinkMap.get(broadlinkCommand.getId()); @@ -255,6 +255,11 @@ public class BroadlinkHome implements Home { } } + } else { + log.warn("Should not get here, no BroadlinkDevices available"); + theReturn = "[{\"error\":{\"type\": 6, \"address\": \"/lights/" + lightId + + "\",\"description\": \"Should not get here, no Broadlinks available\", \"parameter\": \"/lights/" + + lightId + "state\"}}]"; } return theReturn; } @@ -311,6 +316,7 @@ public class BroadlinkHome implements Home { public BLDevice[] broadlinkDiscover () { BLDevice[] clients = null; int aDiscoverPort = Configuration.BROADLINK_DISCOVER_PORT; + broadlinkMap = new HashMap(); while(aDiscoverPort > 0) { try { log.info("Broadlink discover....");