19 lines
748 B
Scala
19 lines
748 B
Scala
package mqttClient
|
|
|
|
import actors.auctions.AuctionPublisher
|
|
import com.google.inject.{AbstractModule, Provides, Singleton}
|
|
import com.hivemq.client.mqtt.mqtt5.{Mqtt5AsyncClient, Mqtt5Client}
|
|
import play.api.libs.concurrent.PekkoGuiceSupport
|
|
import play.api.{Configuration, Logging}
|
|
|
|
class Module extends AbstractModule with PekkoGuiceSupport with Logging {
|
|
override def configure(): Unit = {
|
|
bindTypedActor(MessageProcessorActor, "mqtt-message-processor-actor")
|
|
bind(classOf[MessageProcessorActor.Reg]).asEagerSingleton()
|
|
bindTypedActor(AuctionPublisher, "auction-publisher") // TODO move somewhere else
|
|
}
|
|
|
|
@Provides @Singleton
|
|
def mqtt5Client(config: Configuration): Mqtt5AsyncClient = MqttClientFactory.createClient(config)
|
|
}
|