From 5a4107f60fcaee197b12c37115634cbe92eb2410 Mon Sep 17 00:00:00 2001 From: Ziver Koc Date: Fri, 22 Jan 2016 20:48:29 +0100 Subject: [PATCH] Fixed config page bugs Former-commit-id: cd32facd6e679eb9a66b294d4011da8eb801fd00 --- src/se/hal/ControllerManager.java | 14 ++++++++------ src/se/hal/struct/AbstractDevice.java | 2 ++ web-resource/event_config.tmpl | 22 +++++++++++----------- web-resource/sensor_config.tmpl | 22 +++++++++++----------- 4 files changed, 32 insertions(+), 28 deletions(-) diff --git a/src/se/hal/ControllerManager.java b/src/se/hal/ControllerManager.java index 404f987c..9fccdaa3 100755 --- a/src/se/hal/ControllerManager.java +++ b/src/se/hal/ControllerManager.java @@ -117,11 +117,12 @@ public class ControllerManager implements HalSensorReportListener, } else { // unknown sensor logger.finest("Received report from unregistered sensor: "+ sensorData); - if(!detectedSensors.contains(sensorData)) { - Sensor detectedSensor = new Sensor(); - detectedSensor.setDeviceData(sensorData); + Sensor detectedSensor = findSensor(sensorData, detectedSensors); + if(detectedSensor == null) { + detectedSensor = new Sensor(); detectedSensors.add(detectedSensor); } + detectedSensor.setDeviceData(sensorData); } }catch (SQLException e){ logger.log(Level.WARNING, "Unable to store sensor report", e); @@ -202,11 +203,12 @@ public class ControllerManager implements HalSensorReportListener, } else { // unknown sensor logger.info("Received report from unregistered event: "+ eventData); - if(!detectedEvents.contains(eventData)) { - Event detectedEvent = new Event(); - detectedEvent.setDeviceData(eventData); + Event detectedEvent = findEvent(eventData, detectedEvents); + if(detectedEvent == null) { + detectedEvent = new Event(); detectedEvents.add(detectedEvent); } + detectedEvent.setDeviceData(eventData); } }catch (SQLException e){ logger.log(Level.WARNING, "Unable to store event report", e); diff --git a/src/se/hal/struct/AbstractDevice.java b/src/se/hal/struct/AbstractDevice.java index aa5cd7b1..5c5e0a7f 100755 --- a/src/se/hal/struct/AbstractDevice.java +++ b/src/se/hal/struct/AbstractDevice.java @@ -60,6 +60,8 @@ public abstract class AbstractDevice extends DBBean { } public void setDeviceData(T data) { this.deviceData = data; + if(data != null) + type = data.getClass().getName(); updateConfigString(); } public void save(DBConnection db) throws SQLException { diff --git a/web-resource/event_config.tmpl b/web-resource/event_config.tmpl index 6a47a007..93c4d61f 100755 --- a/web-resource/event_config.tmpl +++ b/web-resource/event_config.tmpl @@ -63,7 +63,7 @@ {{.getType()}} {{.getDeviceData().getTimestamp()}} - {{.}} + {{.getDeviceData()}}