我已经声明它获取在应用程序启动实例化一个对象。 我想访问控制器,这是一个插件的一部分内。 我希望能够使用该插件,但我似乎无法让过去的第一部分-寻找MyWebsocketConnection
对象。 的例子没有说明如何做到这一点。 我不想因为我正在写一个插件来注入到控制器(我看到如何做到这一点的地方静的例子)。
Global.scala
,插件应用程序\程序\ Global.scala
object Global extends GlobalSettings {
object MyWebsocketConnection {
val logger = // return something that gets instantiated once, like websocket object for logging to ui
}
class MyWebsocketConnection {
import MyWebsocketConnection.logger
}
override def onStart(app: Application) {
Logger.info("Application has started...");
}
}
我的自定义日志记录插件控制器:
MyLogger.Scala
,插件应用\应用\控制器\ MyLogger.scala
object MyLogger {
def info(message: String) = {
// THIS CAN'T BE FOUND ?
// MyWebsocketConnection.logger.send(message)
}
}
所以,从玩游戏! 2.0应用程序,引用了插件,我就(可能)做一些像下面,但我甚至无法让过去在此之前的部分:
MyFutureController.scala
,另一出戏! 应用\应用\控制器\ MyFutureController.scala
object MyFutureController extends Controller {
def someRandomMethod = Action {
// Custom logging
MyLogger.info("Here's my log message!");
Ok("This documentation stinks!")
}
}