package net.fwbrasil.activate.play
import javax.inject.Inject
import net.fwbrasil.activate.ActivateContext
import play.api.{Play, Plugin}
class ActivatePlayPluginPlay24 @Inject() (app: play.Application) extends Plugin {
override def onStart = {
ActivateContext.setClassLoader(Play.current.classloader)
models.db.persistenceContext.context
}
override def onStop = {
}
}
trait Hello {}
class MyHelloClass extends Hello {
initialize() // running initialization in constructor
def initialize() = {
ActivateContext.setClassLoader(Play.current.classloader)
}
}
class ActivatePlayModule2 extends AbstractModule {
def configure() = {
bind(classOf[Hello])
.to(classOf[MyHelloClass]).asEagerSingleton
}
}
override final def load(context: ApplicationLoader.Context): Application = {
implicit val app = builder(context).build
ActivateContext.setClassLoader(app.classloader)
models.db.persistenceContext.context
app
}
package net.fwbrasil.activate
import _root_.play.api.inject.Module
import _root_.play.api.inject.Binding
import _root_.play.api.Environment
import _root_.play.api.Configuration
import _root_.play.api.Play
import _root_.play.api.Plugin
import _root_.play.api.inject.ApplicationLifecycle
import javax.inject.Inject
import models.PersistenceContext._
class ActivateNewPlayPlugin extends Plugin {
override def onStart = {
ActivateContext.setClassLoader(Play.current.classloader)
transactional{}
}
}