lila/modules/evaluation/src/main/Env.scala

38 lines
1.0 KiB
Scala

package lila.evaluation
import akka.actor._
import com.typesafe.config.Config
final class Env(
config: Config,
db: lila.db.Env,
hub: lila.hub.Env,
system: ActorSystem) {
private val CollectionEvaluation = config getString "collection.evaluation"
private val EvaluatorExecPath = config getString "evaluator.exec_path"
private val ActorName = config getString "actor.name"
private val ApiToken = config getString "api.token"
private val ApiUrl = config getString "api.url"
lazy val evaluator = new Evaluator(
coll = db(CollectionEvaluation),
execPath = EvaluatorExecPath,
reporter = hub.actor.report,
analyser = hub.actor.analyser,
marker = hub.actor.mod,
token = ApiToken,
apiUrl = ApiUrl)
system.actorOf(Props(new Listener(evaluator)), name = ActorName)
}
object Env {
lazy val current = "[boot] evaluation" describes new Env(
config = lila.common.PlayApp loadConfig "evaluation",
db = lila.db.Env.current,
hub = lila.hub.Env.current,
system = lila.common.PlayApp.system)
}