Skip to content

Commit 9ad42eb

Browse files
committed
support for play 2.8
1 parent 4894b9a commit 9ad42eb

File tree

3 files changed

+21
-12
lines changed

3 files changed

+21
-12
lines changed

play2/src/main/scala/ActiveRecordModule.scala

+2-2
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ class ActiveRecordInitialize @Inject() (
1313
lifecycle: ApplicationLifecycle,
1414
environment: Environment,
1515
configuration: Configuration,
16-
config: PlayConfig.type
16+
config: PlayConfigProvider
1717
) {
1818
implicit val classLoader = environment.classLoader
1919
lazy val activeRecordTables = configuration.getOptional[Configuration]("schema")
@@ -36,7 +36,7 @@ class ActiveRecordInitialize @Inject() (
3636

3737
class ActiveRecordPlayModule extends AbstractModule {
3838
override def configure(): Unit = {
39-
bind(PlayConfig.getClass.asInstanceOf[Class[PlayConfig.type]]).toInstance(PlayConfig)
39+
bind(classOf[PlayConfigProvider]).asEagerSingleton()
4040
bind(classOf[ActiveRecordInitialize]).asEagerSingleton()
4141
}
4242
}

play2/src/main/scala/PlaySupport.scala

+18-9
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.github.aselab.activerecord
22

33
import java.sql.Connection
4-
import javax.inject.Inject
4+
import javax.inject._
55
import java.util.{Locale, TimeZone}
66
import play.api.{Configuration, Environment}
77
import play.api.db.DBApi
@@ -12,7 +12,7 @@ class PlayConfig(
1212
val schema: ActiveRecordTables,
1313
overrideSettings: Map[String, Any] = Map()
1414
) extends ActiveRecordConfig {
15-
import PlayConfig._
15+
import PlayConfigProvider._
1616

1717
lazy val schemaName = schema.getClass.getName.dropRight(1)
1818
lazy val _prefix = configuration.getOptional[String]("schema." + schemaName).getOrElse("activerecord")
@@ -97,8 +97,8 @@ object PlayTranslator extends i18n.Translator {
9797
def get(key: String, args: Any*)(implicit locale: Locale): Option[String] = {
9898
implicit val lang = Lang(locale.getLanguage, locale.getCountry)
9999

100-
if (PlayConfig.messages.messages.get(lang.code).exists(_.isDefinedAt(key))) {
101-
Some(PlayConfig.messages(key, args:_*))
100+
if (PlayConfigProvider.messages.messages.get(lang.code).exists(_.isDefinedAt(key))) {
101+
Some(PlayConfigProvider.messages(key, args:_*))
102102
} else {
103103
i18n.DefaultTranslator.get(key, args:_*)
104104
}
@@ -110,17 +110,26 @@ trait PlaySupport { self: ActiveRecordTables =>
110110
new PlayConfig(self, c)
111111
}
112112

113-
object PlayConfig {
114-
@Inject
113+
@Singleton
114+
class PlayConfigProvider @Inject()(
115+
messages: MessagesApi,
116+
configuration: Configuration,
117+
environment: Environment,
118+
dbApi: DBApi
119+
) {
120+
PlayConfigProvider.messages = messages
121+
PlayConfigProvider.configuration = configuration
122+
PlayConfigProvider.environment = environment
123+
PlayConfigProvider.dbApi = dbApi
124+
}
125+
126+
object PlayConfigProvider {
115127
var messages: MessagesApi = _
116128

117-
@Inject
118129
var configuration: Configuration = _
119130

120-
@Inject
121131
var environment: Environment = _
122132

123-
@Inject
124133
var dbApi: DBApi = _
125134

126135
def loadSchemas = configuration.getOptional[Configuration]("schema")

play2Specs/src/main/scala/ActiveRecordPlaySpecification.scala

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,5 +31,5 @@ trait ActiveRecordPlaySpecification extends ActiveRecordSpecification {
3131
}
3232
}
3333

34-
override def schema: Seq[ActiveRecordTables] = PlayConfig.loadSchemas
34+
override def schema: Seq[ActiveRecordTables] = PlayConfigProvider.loadSchemas
3535
}

0 commit comments

Comments
 (0)