/src/main/scala/Service/AkkaHttpMicroservice.scala

https://gitlab.com/VukoD13/akkatestserver · Scala · 33 lines · 23 code · 8 blank · 2 comment · 0 complexity · 10745914f35261d45ceada7770d1e93a MD5 · raw file

  1. package Service
  2. import akka.actor.ActorSystem
  3. import akka.http.scaladsl.Http
  4. import akka.stream.ActorMaterializer
  5. import com.typesafe.config.ConfigFactory
  6. import reactivemongo.api.{MongoConnection, MongoDriver}
  7. import scala.concurrent.ExecutionContext.Implicits.global
  8. object AkkaHttpMicroservice extends App with Service
  9. {
  10. override implicit val system = ActorSystem()
  11. override implicit val materializer = ActorMaterializer()
  12. val config = ConfigFactory.load()
  13. val uri = config.getString("mongodb.uri")
  14. val database = config.getString("mongodb.db")
  15. //import collection.JavaConversions._
  16. //val servers = config.getStringList("mongodb.servers").toList
  17. val driver = new MongoDriver
  18. var connection: MongoConnection =
  19. MongoConnection.parseURI(uri).map
  20. { parsedUri =>
  21. driver.connection(parsedUri)
  22. }.get
  23. val db = connection(database)
  24. Http().bindAndHandle(routes, config.getString("http.interface"), config.getInt("http.port"))
  25. }