This commit is contained in:
Wolfgang Hottgenroth
2017-11-15 18:19:51 +01:00
parent 632782cf15
commit d25c40b0aa
7 changed files with 13 additions and 4 deletions

View File

@ -1,12 +1,16 @@
package de.hottis.MeasurementCollector; package de.hottis.MeasurementCollector;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List;
import java.util.concurrent.ConcurrentLinkedQueue;
public abstract class AMessageParser { public abstract class AMessageParser {
private String topic; private String topic;
private ConcurrentLinkedQueue<List<ADataObject>> queue;
public AMessageParser(String topic) { public AMessageParser(String topic, ConcurrentLinkedQueue<List<ADataObject>> queue) {
this.topic = topic; this.topic = topic;
this.queue = queue;
} }
public String getTopic() { public String getTopic() {

View File

@ -3,6 +3,7 @@ package de.hottis.MeasurementCollector;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.concurrent.ConcurrentLinkedQueue;
import org.openmuc.jmbus.DataRecord; import org.openmuc.jmbus.DataRecord;
import org.openmuc.jmbus.MBusMessage; import org.openmuc.jmbus.MBusMessage;
@ -20,8 +21,8 @@ public class MBusParser extends AMessageParser {
private final FinderOnePhasePowerMeter finderOnePhasePowerMeter; private final FinderOnePhasePowerMeter finderOnePhasePowerMeter;
private final FinderThreePhasePowerMeter finderThreePhasePowerMeter; private final FinderThreePhasePowerMeter finderThreePhasePowerMeter;
public MBusParser() { public MBusParser(ConcurrentLinkedQueue<List<ADataObject>> queue) {
super(TOPIC); super(TOPIC, queue);
JsonParserFactory jsonParserFactory = JsonParserFactory.getInstance(); JsonParserFactory jsonParserFactory = JsonParserFactory.getInstance();
jsonParser = jsonParserFactory.newJsonParser(); jsonParser = jsonParserFactory.newJsonParser();
hottisFourChannelThermometer = new HottisFourChannelThermometer(); hottisFourChannelThermometer = new HottisFourChannelThermometer();

View File

@ -1,6 +1,8 @@
package de.hottis.MeasurementCollector; package de.hottis.MeasurementCollector;
import java.util.List;
import java.util.Properties; import java.util.Properties;
import java.util.concurrent.ConcurrentLinkedQueue;
public class MeasurementCollector { public class MeasurementCollector {
static final String PROPS_FILENAME = "measurementCollector.props"; static final String PROPS_FILENAME = "measurementCollector.props";
@ -18,7 +20,9 @@ public class MeasurementCollector {
// TestParser testParser = new TestParser(); // TestParser testParser = new TestParser();
// mqttReceiver.registerParser(testParser); // mqttReceiver.registerParser(testParser);
MBusParser mbusParser = new MBusParser(); ConcurrentLinkedQueue<List<ADataObject>> queue = new ConcurrentLinkedQueue<List<ADataObject>>();
MBusParser mbusParser = new MBusParser(queue);
mqttReceiver.registerParser(mbusParser); mqttReceiver.registerParser(mbusParser);
} }