All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.sandinh.paho.akka.PubSubMqttCallback.scala Maven / Gradle / Ivy

There is a newer version: 1.5.1
Show newest version
package com.sandinh.paho.akka

import akka.actor.ActorRef
import org.eclipse.paho.client.mqttv3.{IMqttDeliveryToken, MqttCallback, MqttMessage}
import MqttPubSub.logger

private class PubSubMqttCallback(owner: ActorRef) extends MqttCallback {
  def connectionLost(cause: Throwable): Unit = {
    logger.error(cause)("connection lost")
    owner ! Disconnected
  }
  /** only logging */
  def deliveryComplete(token: IMqttDeliveryToken): Unit = {
    logger.debug("delivery complete " + java.util.Arrays.toString(token.getTopics.asInstanceOf[Array[AnyRef]]))
  }
  def messageArrived(topic: String, message: MqttMessage): Unit = {
    logger.debug(s"message arrived $topic")
    owner ! new Message(topic, message.getPayload)
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy