aboutsummaryrefslogtreecommitdiff
path: root/server/src/main/scala/Main.scala
blob: 8db8873cb571ce8af2417ed649b0de48dfd1fa69 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package triad

import java.nio.file.{Files, Paths}

import akka.actor.ActorSystem
import akka.http.scaladsl.Http
import akka.stream.ActorMaterializer

import scala.concurrent._
import scala.concurrent.duration._

object Main extends App {

  implicit val system = ActorSystem("triad")
  implicit val materializer = ActorMaterializer()

  val repository = {
    Files.deleteIfExists(Paths.get("database.sqlite"))
    Repository.sqlite("database.sqlite")
  }
  val liveMessages = new LiveMessages
  val routes = new Routes(repository, liveMessages)

  Await.result(repository.database.run(repository.initAction), 10.seconds)

  Await.result(Http().bindAndHandle(routes.all, "localhost", 9090), 10.seconds)

}