From 47164bba8383cd7cc2cc08098bf19836d3b2fea2 Mon Sep 17 00:00:00 2001 From: Wolfgang Hottgenroth Date: Fri, 24 Nov 2017 18:20:37 +0100 Subject: [PATCH] changes --- measurementCollector.props | 8 ++++---- pom.xml | 5 +++++ .../hottis/measurementCollector/ADataParser.java | 1 + .../measurementCollector/AMessageParser.java | 9 ++++++--- .../FinderOnePhasePowerMeter.java | 2 ++ .../FinderThreePhasePowerMeter.java | 2 ++ .../HottisFourChannelThermometer.java | 2 ++ .../hottis/measurementCollector/MBusParser.java | 2 ++ .../MeasurementCollector.java | 7 ++++++- .../MeasurementCollectorException.java | 16 ++++++++++++++++ 10 files changed, 46 insertions(+), 8 deletions(-) create mode 100644 src/main/java/de/hottis/measurementCollector/MeasurementCollectorException.java diff --git a/measurementCollector.props b/measurementCollector.props index 8fff40e..e2873f2 100644 --- a/measurementCollector.props +++ b/measurementCollector.props @@ -1,7 +1,7 @@ -;mqtt.broker = tcp://172.16.2.15:1883 -mqtt.broker = tcp://eupenstrasse20.dynamic.hottis.de:2883 -mqtt.username = tron -mqtt.password = geheim123 +mqtt.broker = tcp://172.16.2.15:1883 +;mqtt.broker = tcp://eupenstrasse20.dynamic.hottis.de:2883 +;mqtt.username = tron +;mqtt.password = geheim123 mbus.dataparser.1 = light,Light,de.hottis.measurementCollector.FinderOnePhasePowerMeter mbus.dataparser.2 = computer,Computer,de.hottis.measurementCollector.FinderOnePhasePowerMeter diff --git a/pom.xml b/pom.xml index ee57a98..771a373 100644 --- a/pom.xml +++ b/pom.xml @@ -18,6 +18,11 @@ 3.8.1 test + + quick-json + quick-json + 1.0.2.3 + de.hottis.common HottisLibJava diff --git a/src/main/java/de/hottis/measurementCollector/ADataParser.java b/src/main/java/de/hottis/measurementCollector/ADataParser.java index bac90d2..eba8292 100644 --- a/src/main/java/de/hottis/measurementCollector/ADataParser.java +++ b/src/main/java/de/hottis/measurementCollector/ADataParser.java @@ -1,5 +1,6 @@ package de.hottis.measurementCollector; +import de.hottis.smarthomelib.ADataObject; import java.time.LocalDateTime; import java.util.List; diff --git a/src/main/java/de/hottis/measurementCollector/AMessageParser.java b/src/main/java/de/hottis/measurementCollector/AMessageParser.java index ce2ec9b..61532a6 100644 --- a/src/main/java/de/hottis/measurementCollector/AMessageParser.java +++ b/src/main/java/de/hottis/measurementCollector/AMessageParser.java @@ -1,5 +1,8 @@ package de.hottis.measurementCollector; +import de.hottis.common.HottisCommonException; +import de.hottis.common.MyQueue; +import de.hottis.smarthomelib.ADataObject; import java.time.LocalDateTime; import java.util.List; import java.util.Properties; @@ -10,8 +13,8 @@ import org.apache.logging.log4j.Logger; public abstract class AMessageParser { final protected Logger logger = LogManager.getRootLogger(); - private String topic; - private MyQueue queue; + private final String topic; + private final MyQueue queue; protected Properties config; public AMessageParser(String topic, Properties config, MyQueue queue) { @@ -28,7 +31,7 @@ public abstract class AMessageParser { return this.topic; } - public void enqueue(List itemList) throws MeasurementCollectorException { + public void enqueue(List itemList) throws HottisCommonException { for (ADataObject ado : itemList) { queue.enqueue(ado); logger.debug("message enqueued"); diff --git a/src/main/java/de/hottis/measurementCollector/FinderOnePhasePowerMeter.java b/src/main/java/de/hottis/measurementCollector/FinderOnePhasePowerMeter.java index 4aa5182..861d6f5 100644 --- a/src/main/java/de/hottis/measurementCollector/FinderOnePhasePowerMeter.java +++ b/src/main/java/de/hottis/measurementCollector/FinderOnePhasePowerMeter.java @@ -1,5 +1,7 @@ package de.hottis.measurementCollector; +import de.hottis.smarthomelib.ADataObject; +import de.hottis.smarthomelib.ElectricEnergyDataObject; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/de/hottis/measurementCollector/FinderThreePhasePowerMeter.java b/src/main/java/de/hottis/measurementCollector/FinderThreePhasePowerMeter.java index 7614ae9..b53ec53 100644 --- a/src/main/java/de/hottis/measurementCollector/FinderThreePhasePowerMeter.java +++ b/src/main/java/de/hottis/measurementCollector/FinderThreePhasePowerMeter.java @@ -1,5 +1,7 @@ package de.hottis.measurementCollector; +import de.hottis.smarthomelib.ADataObject; +import de.hottis.smarthomelib.ElectricEnergyDataObject; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/de/hottis/measurementCollector/HottisFourChannelThermometer.java b/src/main/java/de/hottis/measurementCollector/HottisFourChannelThermometer.java index 82527a5..81c2691 100644 --- a/src/main/java/de/hottis/measurementCollector/HottisFourChannelThermometer.java +++ b/src/main/java/de/hottis/measurementCollector/HottisFourChannelThermometer.java @@ -1,5 +1,7 @@ package de.hottis.measurementCollector; +import de.hottis.smarthomelib.ADataObject; +import de.hottis.smarthomelib.TemperatureDataObject; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; diff --git a/src/main/java/de/hottis/measurementCollector/MBusParser.java b/src/main/java/de/hottis/measurementCollector/MBusParser.java index ef5f009..50122be 100644 --- a/src/main/java/de/hottis/measurementCollector/MBusParser.java +++ b/src/main/java/de/hottis/measurementCollector/MBusParser.java @@ -14,6 +14,8 @@ import org.openmuc.jmbus.VariableDataStructure; import com.json.parsers.JSONParser; import com.json.parsers.JsonParserFactory; +import de.hottis.common.MyQueue; +import de.hottis.smarthomelib.ADataObject; public class MBusParser extends AMessageParser { static final String DATA_PARSER_PROP = "mbus.dataparser"; diff --git a/src/main/java/de/hottis/measurementCollector/MeasurementCollector.java b/src/main/java/de/hottis/measurementCollector/MeasurementCollector.java index 36b405a..b211945 100644 --- a/src/main/java/de/hottis/measurementCollector/MeasurementCollector.java +++ b/src/main/java/de/hottis/measurementCollector/MeasurementCollector.java @@ -1,5 +1,8 @@ package de.hottis.measurementCollector; +import de.hottis.common.JmsTopic; +import de.hottis.smarthomelib.ADataObject; +import java.io.FileInputStream; import java.util.Properties; import org.apache.logging.log4j.LogManager; @@ -15,7 +18,9 @@ public class MeasurementCollector { logger.info("MeasurementCollector starting"); final Properties config = new Properties(); - config.load(MeasurementCollector.class.getClassLoader().getResourceAsStream(PROPS_FILENAME)); + try (FileInputStream propsFileInputStream = new FileInputStream(PROPS_FILENAME)) { + config.load(propsFileInputStream); + } logger.debug("Configuration loaded"); MqttReceiver mqttReceiver = new MqttReceiver(config); diff --git a/src/main/java/de/hottis/measurementCollector/MeasurementCollectorException.java b/src/main/java/de/hottis/measurementCollector/MeasurementCollectorException.java new file mode 100644 index 0000000..0c2e528 --- /dev/null +++ b/src/main/java/de/hottis/measurementCollector/MeasurementCollectorException.java @@ -0,0 +1,16 @@ +package de.hottis.measurementCollector; + +import de.hottis.common.HottisCommonException; + +public class MeasurementCollectorException extends HottisCommonException { + private static final long serialVersionUID = 1L; + + public MeasurementCollectorException(String msg, Throwable cause) { + super(msg, cause); + } + + public MeasurementCollectorException(String msg) { + super(msg); + } + +}