diff --git a/src/main/java/de/hottis/measurementCollector/MeasurementCollector.java b/src/main/java/de/hottis/measurementCollector/MeasurementCollector.java index b13cdec..3d5c081 100644 --- a/src/main/java/de/hottis/measurementCollector/MeasurementCollector.java +++ b/src/main/java/de/hottis/measurementCollector/MeasurementCollector.java @@ -24,7 +24,6 @@ public class MeasurementCollector { logger.debug("Configuration loaded"); MqttReceiver mqttReceiver = new MqttReceiver(config); - mqttReceiver.connect(); logger.debug("MqttReceiver started"); JmsTopic queue = new JmsTopic<>(config, JmsTopic.Mode.PRODUCER); @@ -40,6 +39,9 @@ public class MeasurementCollector { espThermometerParser.init(); mqttReceiver.registerParser(espThermometerParser); logger.debug("EspThermometerParser started"); + + mqttReceiver.connect(); + logger.debug("MqttReceiver connected"); } } diff --git a/src/main/java/de/hottis/measurementCollector/MqttReceiver.java b/src/main/java/de/hottis/measurementCollector/MqttReceiver.java index 426c952..463ad28 100644 --- a/src/main/java/de/hottis/measurementCollector/MqttReceiver.java +++ b/src/main/java/de/hottis/measurementCollector/MqttReceiver.java @@ -68,8 +68,8 @@ public class MqttReceiver { try { client = new MqttClient(broker, clientId); client.setCallback(callback); - client.connect(connOpts); - logger.info("Connected"); + reconnect(); + logger.info("Connected"); } catch (MqttException e) { throw new MeasurementCollectorException("MqttReceiver.connect", e); } @@ -101,12 +101,6 @@ public class MqttReceiver { } public void registerParser(AMessageParser parser) throws MeasurementCollectorException { - try { - parsers.put(parser.getTopic(), parser); - client.subscribe(parser.getTopic()); - logger.info("Subscribed: " + parser.getTopic()); - } catch (MqttException e) { - throw new MeasurementCollectorException("MqttReceiver.registerParser", e); - } + parsers.put(parser.getTopic(), parser); } }