playframework playframework-2.5

playframework - Play.current está en desuso en el juego 2.5



playframework-2.5 (1)

Dependiendo de su caso de uso, ahora debería usar Environment , ApplicationLifecycle y Configuration lugar de Application

En su caso, en realidad está interesado en la configuración, por lo que la forma de hacerlo en Play 2.5.x sería la siguiente:

class HomeController @Inject() (configuration: play.api.Configuration) extends Controller { def config = Action { Ok(configuration.underlying.getInt("some.config.key")) } }

El ejemplo que proporcioné es para un controlador pero también puede usar este enfoque en otros lugares de su aplicación. Simplemente no me gustó el objeto ApplicationConfig que me proporcionó; considere refaccionarlo cuando migre a Play 2.5.x. DI ahora es el camino a seguir.

Actualmente estoy usando Play.current de la siguiente manera.

import play.api.{Logger, Play} object ApplicationConfig { val app = Play.current def getConfInt(key: String): Option[Int] = { val result = app.configuration.getInt(key) result } }

Desde la migración a 2.5, tengo una advertencia que dice que está en desuso con

"Esta es una referencia estática a la aplicación, use DI en su lugar"

Sin embargo, el documento no dice exactamente cómo se supone que debo usar DI en su lugar.

Gracias