@Override
 public void run() {
   LOGGER.info("Started MQTT subscription processing thread.");
   while (true) {
     try {
       Future<Message> future = connection.receive();
       Message message = future.await();
       message.ack();
       EventProcessingLogic.processRawPayload(
           MqttInboundEventReceiver.this, message.getPayload(), null);
     } catch (InterruptedException e) {
       break;
     } catch (Throwable e) {
       LOGGER.error(e);
     }
   }
 }