diff --git a/pom.xml b/pom.xml index 80316a6..31469b5 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ com.bwssystems.HABridge ha-bridge - 2.0.0 + 2.0.1 jar HA Bridge diff --git a/src/main/java/com/bwssystems/HABridge/api/hue/DeviceState.java b/src/main/java/com/bwssystems/HABridge/api/hue/DeviceState.java index 7c065f7..6f229f6 100644 --- a/src/main/java/com/bwssystems/HABridge/api/hue/DeviceState.java +++ b/src/main/java/com/bwssystems/HABridge/api/hue/DeviceState.java @@ -1,5 +1,6 @@ package com.bwssystems.HABridge.api.hue; +import java.util.ArrayList; import java.util.List; /** @@ -7,7 +8,7 @@ import java.util.List; */ public class DeviceState { private boolean on; - private int bri = 255; + private int bri; private int hue; private int sat; private String effect; @@ -96,7 +97,24 @@ public class DeviceState { public void setXy(List xy) { this.xy = xy; } - + public static DeviceState createDeviceState() { + DeviceState newDeviceState = new DeviceState(); + newDeviceState.fillIn(); +// newDeviceState.setColormode("none"); +// ArrayList doubleArray = new ArrayList(); +// doubleArray.add(new Double(0)); +// doubleArray.add(new Double(0)); +// newDeviceState.setXy(doubleArray); + + return newDeviceState; + } + public void fillIn() { + if(this.getAlert() == null) + this.setAlert("none"); + if(this.getEffect() == null) + this.setEffect("none"); + this.setReachable(true); + } @Override public String toString() { return "DeviceState{" + diff --git a/src/main/java/com/bwssystems/HABridge/dao/DeviceDescriptor.java b/src/main/java/com/bwssystems/HABridge/dao/DeviceDescriptor.java index 5e71f87..2090b7c 100644 --- a/src/main/java/com/bwssystems/HABridge/dao/DeviceDescriptor.java +++ b/src/main/java/com/bwssystems/HABridge/dao/DeviceDescriptor.java @@ -166,6 +166,8 @@ public class DeviceDescriptor{ } public DeviceState getDeviceState() { + if(deviceState == null) + deviceState = DeviceState.createDeviceState(); return deviceState; } diff --git a/src/main/java/com/bwssystems/HABridge/hue/HueMulator.java b/src/main/java/com/bwssystems/HABridge/hue/HueMulator.java index 23203c7..35c35f7 100644 --- a/src/main/java/com/bwssystems/HABridge/hue/HueMulator.java +++ b/src/main/java/com/bwssystems/HABridge/hue/HueMulator.java @@ -381,6 +381,7 @@ public class HueMulator implements HueErrorStringSet { responseString = "[{\"error\":{\"type\": 3, \"address\": \"/lights/" + lightId + "\",\"description\": \"Could not find device\", \"resource\": \"/lights/" + lightId + "\"}}]"; return responseString; } + state.fillIn(); theHeaders = new Gson().fromJson(device.getHeaders(), NameValue[].class); responseString = this.formatSuccessHueResponse(state, request.body(), lightId);