本文整理汇总了Scala中com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents类的典型用法代码示例。如果您正苦于以下问题:Scala LagomDevModeComponents类的具体用法?Scala LagomDevModeComponents怎么用?Scala LagomDevModeComponents使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了LagomDevModeComponents类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Scala代码示例。
示例1: Lagomneo4jsampleLoader
//设置package包名称以及导入依赖的类
package com.inocybe.lagomneo4jsample.impl
import com.inocybe.lagomneo4jsample.api.Lagomneo4jsampleService
import com.lightbend.lagom.scaladsl.api.ServiceLocator
import com.lightbend.lagom.scaladsl.api.ServiceLocator.NoServiceLocator
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import com.lightbend.lagom.scaladsl.persistence.cassandra.CassandraPersistenceComponents
import com.lightbend.lagom.scaladsl.server._
import com.softwaremill.macwire._
import play.api.libs.ws.ahc.AhcWSComponents
class Lagomneo4jsampleLoader extends LagomApplicationLoader {
override def load(context: LagomApplicationContext): LagomApplication =
new Lagomneo4jsampleApplication(context) {
override def serviceLocator: ServiceLocator = NoServiceLocator
}
override def loadDevMode(context: LagomApplicationContext): LagomApplication =
new Lagomneo4jsampleApplication(context) with LagomDevModeComponents
override def describeServices = List(
readDescriptor[Lagomneo4jsampleService]
)
}
abstract class Lagomneo4jsampleApplication(context: LagomApplicationContext)
extends LagomApplication(context)
with CassandraPersistenceComponents
with AhcWSComponents {
// Bind the services that this server provides
override lazy val lagomServer = LagomServer.forServices(
bindService[Lagomneo4jsampleService].to(wire[Lagomneo4jsampleServiceImpl])
)
// Register the JSON serializer registry
override lazy val jsonSerializerRegistry = Lagomneo4jsampleSerializerRegistry
// Register the lagom-neo4j-sample persistent entity
persistentEntityRegistry.register(wire[Lagomneo4jsampleEntity])
}
示例2: Lagomneo4jsampleStreamLoader
//设置package包名称以及导入依赖的类
package com.inocybe.lagomneo4jsamplestream.impl
import com.inocybe.lagomneo4jsamplestream.api.Lagomneo4jsampleStreamService
import com.lightbend.lagom.scaladsl.api.ServiceLocator.NoServiceLocator
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import com.lightbend.lagom.scaladsl.server._
import com.softwaremill.macwire._
import play.api.libs.ws.ahc.AhcWSComponents
class Lagomneo4jsampleStreamLoader extends LagomApplicationLoader {
override def load(context: LagomApplicationContext): LagomApplication =
new Lagomneo4jsampleStreamApplication(context) {
override def serviceLocator = NoServiceLocator
}
override def loadDevMode(context: LagomApplicationContext): LagomApplication =
new Lagomneo4jsampleStreamApplication(context) with LagomDevModeComponents
override def describeServices = List(
readDescriptor[Lagomneo4jsampleStreamService]
)
}
abstract class Lagomneo4jsampleStreamApplication(context: LagomApplicationContext)
extends LagomApplication(context)
with AhcWSComponents {
// Bind the services that this server provides
override lazy val lagomServer = LagomServer.forServices(
bindService[Lagomneo4jsampleStreamService].to(wire[Lagomneo4jsampleStreamServiceImpl])
)
// Bind the Lagomneo4jsampleService client
lazy val lagomneo4jsampleService = serviceClient.implement[Lagomneo4jsampleStreamService]
}
示例3: HelloLoader
//设置package包名称以及导入依赖的类
package sample.helloworld.impl
import com.lightbend.lagom.scaladsl.api.ServiceLocator
import com.lightbend.lagom.scaladsl.api.ServiceLocator.NoServiceLocator
import com.lightbend.lagom.scaladsl.broker.kafka.LagomKafkaComponents
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import com.lightbend.lagom.scaladsl.persistence.cassandra.CassandraPersistenceComponents
import com.lightbend.lagom.scaladsl.server._
import com.softwaremill.macwire._
import play.api.libs.ws.ahc.AhcWSComponents
import sample.helloworld.api.HelloService
class HelloLoader extends LagomApplicationLoader {
override def load(context: LagomApplicationContext): LagomApplication =
new HelloApplication(context) {
override def serviceLocator: ServiceLocator = NoServiceLocator
}
override def loadDevMode(context: LagomApplicationContext): LagomApplication =
new HelloApplication(context) with LagomDevModeComponents
}
abstract class HelloApplication(context: LagomApplicationContext) extends HelloComponents(context)
with LagomKafkaComponents
{
}
abstract class HelloComponents(context: LagomApplicationContext) extends LagomApplication(context)
with CassandraPersistenceComponents
with AhcWSComponents{
// Bind the services that this server provides
override lazy val lagomServer = LagomServer.forServices(
bindService[HelloService].to(wire[HelloServiceImpl])
)
// Register the JSON serializer registry
override lazy val jsonSerializerRegistry = HelloSerializerRegistry
// Register the Hello persistent entity
persistentEntityRegistry.register(wire[HelloEntity])
}
示例4: HelloConsumerLoader
//设置package包名称以及导入依赖的类
package sample.helloworldconsumer.impl
import com.lightbend.lagom.scaladsl.api.ServiceLocator
import com.lightbend.lagom.scaladsl.api.ServiceLocator.NoServiceLocator
import com.lightbend.lagom.scaladsl.broker.kafka.LagomKafkaComponents
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import com.lightbend.lagom.scaladsl.persistence.cassandra.CassandraPersistenceComponents
import com.lightbend.lagom.scaladsl.server.{LagomApplication, LagomApplicationContext, LagomApplicationLoader, LagomServer}
import com.softwaremill.macwire._
import play.api.libs.ws.ahc.AhcWSComponents
import sample.helloworld.api.HelloService
import sample.helloworldconsumer.api.HelloConsumerService
import sample.helloworldconsumer.impl.repositories.MessageRepository
class HelloConsumerLoader extends LagomApplicationLoader {
override def load(context: LagomApplicationContext): LagomApplication =
new HelloConsumerApplication(context) {
override def serviceLocator: ServiceLocator = NoServiceLocator
}
override def loadDevMode(context: LagomApplicationContext): LagomApplication =
new HelloConsumerApplication(context) with LagomDevModeComponents
}
abstract class HelloConsumerApplication(context: LagomApplicationContext)
extends LagomApplication(context)
with CassandraPersistenceComponents
with LagomKafkaComponents
with AhcWSComponents {
// Bind the services that this server provides
override lazy val lagomServer = LagomServer.forServices(
bindService[HelloConsumerService].to(wire[HelloConsumerServiceImpl])
)
//Bind the HelloService client
lazy val helloService = serviceClient.implement[HelloService]
lazy val messageRepository = wire[MessageRepository]
// Register the JSON serializer registry
override lazy val jsonSerializerRegistry = HelloConsumerSerializerRegistry
// Register the Message persistent entity
persistentEntityRegistry.register(wire[MessageEntity])
readSide.register(wire[MessageEventProcessor])
}
示例5: LagomhandsondevelopmentStreamLoader
//设置package包名称以及导入依赖的类
package com.example.lagomhandsondevelopmentstream.impl
import com.lightbend.lagom.scaladsl.api.ServiceLocator.NoServiceLocator
import com.lightbend.lagom.scaladsl.server._
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import play.api.libs.ws.ahc.AhcWSComponents
import com.example.lagomhandsondevelopmentstream.api.LagomhandsondevelopmentStreamService
import com.example.lagomhandsondevelopment.api.LagomhandsondevelopmentService
import com.softwaremill.macwire._
class LagomhandsondevelopmentStreamLoader extends LagomApplicationLoader {
override def load(context: LagomApplicationContext): LagomApplication =
new LagomhandsondevelopmentStreamApplication(context) {
override def serviceLocator = NoServiceLocator
}
override def loadDevMode(context: LagomApplicationContext): LagomApplication =
new LagomhandsondevelopmentStreamApplication(context) with LagomDevModeComponents
override def describeServices = List(
readDescriptor[LagomhandsondevelopmentStreamService]
)
}
abstract class LagomhandsondevelopmentStreamApplication(context: LagomApplicationContext)
extends LagomApplication(context)
with AhcWSComponents {
// Bind the services that this server provides
override lazy val lagomServer = LagomServer.forServices(
bindService[LagomhandsondevelopmentStreamService].to(wire[LagomhandsondevelopmentStreamServiceImpl])
)
// Bind the LagomhandsondevelopmentService client
lazy val lagomhandsondevelopmentService = serviceClient.implement[LagomhandsondevelopmentService]
}
开发者ID:negokaz,项目名称:lagom-hands-on-development.scala,代码行数:38,代码来源:LagomhandsondevelopmentStreamLoader.scala
示例6: LagomhandsondevelopmentLoader
//设置package包名称以及导入依赖的类
package com.example.lagomhandsondevelopment.impl
import com.lightbend.lagom.scaladsl.api.ServiceLocator
import com.lightbend.lagom.scaladsl.api.ServiceLocator.NoServiceLocator
import com.lightbend.lagom.scaladsl.persistence.cassandra.CassandraPersistenceComponents
import com.lightbend.lagom.scaladsl.server._
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import play.api.libs.ws.ahc.AhcWSComponents
import com.example.lagomhandsondevelopment.api.LagomhandsondevelopmentService
import com.softwaremill.macwire._
class LagomhandsondevelopmentLoader extends LagomApplicationLoader {
override def load(context: LagomApplicationContext): LagomApplication =
new LagomhandsondevelopmentApplication(context) {
override def serviceLocator: ServiceLocator = NoServiceLocator
}
override def loadDevMode(context: LagomApplicationContext): LagomApplication =
new LagomhandsondevelopmentApplication(context) with LagomDevModeComponents
override def describeServices = List(
readDescriptor[LagomhandsondevelopmentService]
)
}
abstract class LagomhandsondevelopmentApplication(context: LagomApplicationContext)
extends LagomApplication(context)
with CassandraPersistenceComponents
with AhcWSComponents {
// Bind the services that this server provides
override lazy val lagomServer = LagomServer.forServices(
bindService[LagomhandsondevelopmentService].to(wire[LagomhandsondevelopmentServiceImpl])
)
// Register the JSON serializer registry
override lazy val jsonSerializerRegistry = LagomhandsondevelopmentSerializerRegistry
// Register the lagom-hands-on-development persistent entity
persistentEntityRegistry.register(wire[LagomhandsondevelopmentEntity])
}
开发者ID:negokaz,项目名称:lagom-hands-on-development.scala,代码行数:43,代码来源:LagomhandsondevelopmentLoader.scala
示例7: AccountLoader
//设置package包名称以及导入依赖的类
package org.ioreskovic.greatmaterialcontinuum.impl
import com.lightbend.lagom.scaladsl.api.ServiceLocator
import com.lightbend.lagom.scaladsl.api.ServiceLocator.NoServiceLocator
import com.lightbend.lagom.scaladsl.broker.kafka.LagomKafkaComponents
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import com.lightbend.lagom.scaladsl.persistence.cassandra.CassandraPersistenceComponents
import com.lightbend.lagom.scaladsl.server._
import com.softwaremill.macwire._
import org.ioreskovic.greatmaterialcontinuum.api.AccountService
import org.ioreskovic.greatmaterialcontinuum.impl.ent.acc.{AccountEntity, AccountSerializerRegistry}
import play.api.libs.ws.ahc.AhcWSComponents
class AccountLoader extends LagomApplicationLoader {
override def load(context: LagomApplicationContext): LagomApplication =
new AccountApplication(context) {
override def serviceLocator: ServiceLocator = NoServiceLocator
}
override def loadDevMode(context: LagomApplicationContext): LagomApplication =
new AccountApplication(context) with LagomDevModeComponents
override def describeServices = List(
readDescriptor[AccountService]
)
}
abstract class AccountApplication(context: LagomApplicationContext)
extends LagomApplication(context)
with CassandraPersistenceComponents
with LagomKafkaComponents
with AhcWSComponents {
// Bind the service that this server provides
override lazy val lagomServer = serverFor[AccountService](wire[AccountServiceImpl])
// Register the JSON serializer registry
override lazy val jsonSerializerRegistry = AccountSerializerRegistry
// Register the great-material-continuum persistent entity
persistentEntityRegistry.register(wire[AccountEntity])
}
示例8: HelloStreamLoader
//设置package包名称以及导入依赖的类
package se.hultner.hellostream.impl
import com.lightbend.lagom.scaladsl.api.ServiceLocator.NoServiceLocator
import com.lightbend.lagom.scaladsl.server._
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import play.api.libs.ws.ahc.AhcWSComponents
import se.hultner.hellostream.api.HelloStreamService
import se.hultner.hello.api.HelloService
import com.softwaremill.macwire._
class HelloStreamLoader extends LagomApplicationLoader {
override def load(context: LagomApplicationContext): LagomApplication =
new HelloStreamApplication(context) {
override def serviceLocator = NoServiceLocator
}
override def loadDevMode(context: LagomApplicationContext): LagomApplication =
new HelloStreamApplication(context) with LagomDevModeComponents
override def describeServices = List(
readDescriptor[HelloStreamService]
)
}
abstract class HelloStreamApplication(context: LagomApplicationContext)
extends LagomApplication(context)
with AhcWSComponents {
// Bind the services that this server provides
override lazy val lagomServer = LagomServer.forServices(
bindService[HelloStreamService].to(wire[HelloStreamServiceImpl])
)
// Bind the HelloService client
lazy val helloService = serviceClient.implement[HelloService]
}
示例9: HelloLoader
//设置package包名称以及导入依赖的类
package se.hultner.hello.impl
import com.lightbend.lagom.scaladsl.api.ServiceLocator
import com.lightbend.lagom.scaladsl.api.ServiceLocator.NoServiceLocator
import com.lightbend.lagom.scaladsl.persistence.cassandra.CassandraPersistenceComponents
import com.lightbend.lagom.scaladsl.server._
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import play.api.libs.ws.ahc.AhcWSComponents
import se.hultner.hello.api.HelloService
import com.softwaremill.macwire._
class HelloLoader extends LagomApplicationLoader {
override def load(context: LagomApplicationContext): LagomApplication =
new HelloApplication(context) {
override def serviceLocator: ServiceLocator = NoServiceLocator
}
override def loadDevMode(context: LagomApplicationContext): LagomApplication =
new HelloApplication(context) with LagomDevModeComponents
override def describeServices = List(
readDescriptor[HelloService]
)
}
abstract class HelloApplication(context: LagomApplicationContext)
extends LagomApplication(context)
with CassandraPersistenceComponents
with AhcWSComponents {
// Bind the services that this server provides
override lazy val lagomServer = LagomServer.forServices(
bindService[HelloService].to(wire[HelloServiceImpl])
)
// Register the JSON serializer registry
override lazy val jsonSerializerRegistry = HelloSerializerRegistry
// Register the Hello persistent entity
persistentEntityRegistry.register(wire[HelloEntity])
}
示例10: LagomshoppingStreamLoader
//设置package包名称以及导入依赖的类
package com.example.lagomshoppingstream.impl
import com.lightbend.lagom.scaladsl.api.ServiceLocator.NoServiceLocator
import com.lightbend.lagom.scaladsl.server._
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import play.api.libs.ws.ahc.AhcWSComponents
import com.example.lagomshoppingstream.api.LagomshoppingStreamService
import com.example.lagomshopping.api.LagomshoppingService
import com.softwaremill.macwire._
class LagomshoppingStreamLoader extends LagomApplicationLoader {
override def load(context: LagomApplicationContext): LagomApplication =
new LagomshoppingStreamApplication(context) {
override def serviceLocator = NoServiceLocator
}
override def loadDevMode(context: LagomApplicationContext): LagomApplication =
new LagomshoppingStreamApplication(context) with LagomDevModeComponents
override def describeServices = List(
readDescriptor[LagomshoppingStreamService]
)
}
abstract class LagomshoppingStreamApplication(context: LagomApplicationContext)
extends LagomApplication(context)
with AhcWSComponents {
// Bind the services that this server provides
override lazy val lagomServer = LagomServer.forServices(
bindService[LagomshoppingStreamService].to(wire[LagomshoppingStreamServiceImpl])
)
// Bind the LagomshoppingService client
lazy val lagomshoppingService = serviceClient.implement[LagomshoppingService]
}
示例11: LagomshoppingLoader
//设置package包名称以及导入依赖的类
package com.example.lagomshopping.impl
import com.lightbend.lagom.scaladsl.api.ServiceLocator
import com.lightbend.lagom.scaladsl.api.ServiceLocator.NoServiceLocator
import com.lightbend.lagom.scaladsl.persistence.cassandra.CassandraPersistenceComponents
import com.lightbend.lagom.scaladsl.server._
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import play.api.libs.ws.ahc.AhcWSComponents
import com.example.lagomshopping.api.LagomshoppingService
import com.softwaremill.macwire._
class LagomshoppingLoader extends LagomApplicationLoader {
override def load(context: LagomApplicationContext): LagomApplication =
new LagomshoppingApplication(context) {
override def serviceLocator: ServiceLocator = NoServiceLocator
}
override def loadDevMode(context: LagomApplicationContext): LagomApplication =
new LagomshoppingApplication(context) with LagomDevModeComponents
override def describeServices = List(
readDescriptor[LagomshoppingService]
)
}
abstract class LagomshoppingApplication(context: LagomApplicationContext)
extends LagomApplication(context)
with CassandraPersistenceComponents
with AhcWSComponents {
// Bind the services that this server provides
override lazy val lagomServer = LagomServer.forServices(
bindService[LagomshoppingService].to(wire[LagomshoppingServiceImpl])
)
// Register the JSON serializer registry
override lazy val jsonSerializerRegistry = LagomshoppingSerializerRegistry
// Register the LagomShopping persistent entity
persistentEntityRegistry.register(wire[LagomshoppingEntity])
}
示例12: ServiceApplicationLoader
//设置package包名称以及导入依赖的类
package org.wex.cmsfs.collect.ssh.impl
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import com.lightbend.lagom.scaladsl.pubsub.PubSubComponents
import com.lightbend.lagom.scaladsl.server._
import com.softwaremill.macwire._
import org.wex.cmsfs.collect.ssh.api.CollectSSHService
import org.wex.cmsfs.format.alarm.api.FormatAlarmService
import org.wex.cmsfs.format.analyze.api.FormatAnalyzeService
import org.wex.cmsfs.lagom.service.discovery.Common
import org.wex.cmsfs.lagom.service.discovery.consul.ConsulServiceLocatorComponents
import play.api.libs.ws.ahc.AhcWSComponents
class ServiceApplicationLoader extends LagomApplicationLoader {
override def loadDevMode(context: LagomApplicationContext): LagomApplication = {
new ServiceApplication(context) with LagomDevModeComponents
}
override def load(context: LagomApplicationContext): LagomApplication = {
Common.loaderEnvironment(context)
new ServiceApplication(context) with ConsulServiceLocatorComponents
}
}
abstract class ServiceApplication(context: LagomApplicationContext)
extends LagomApplication(context)
with AhcWSComponents
with PubSubComponents {
override lazy val lagomServer = LagomServer.forServices(
bindService[CollectSSHService].to(wire[CollectSSHServiceImpl])
)
val formatAlarmService = serviceClient.implement[FormatAlarmService]
val formatAnalyzeService = serviceClient.implement[FormatAnalyzeService]
val collectTopic = wire[CollectTopic]
val collecting = wire[Collecting]
}
示例13: WebGateway
//设置package包名称以及导入依赖的类
import com.lightbend.lagom.scaladsl.api.{ServiceAcl, ServiceInfo}
import com.lightbend.lagom.scaladsl.client.LagomServiceClientComponents
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import com.softwaremill.macwire._
import controllers.{Assets, Main}
import ogr.wex.cmsfs.monitor.api.MonitorService
import org.wex.cmsfs.lagom.service.discovery.Common
import org.wex.cmsfs.lagom.service.discovery.consul.ConsulServiceLocatorComponents
import play.api.ApplicationLoader.Context
import play.api.i18n.I18nComponents
import play.api.libs.ws.ahc.AhcWSComponents
import play.api.{ApplicationLoader, BuiltInComponentsFromContext, Mode}
import router.Routes
import scala.collection.immutable
import scala.concurrent.ExecutionContext
abstract class WebGateway(context: Context) extends BuiltInComponentsFromContext(context)
with I18nComponents
with AhcWSComponents
with LagomServiceClientComponents {
override lazy val serviceInfo: ServiceInfo = ServiceInfo(
"web-gateway",
Map(
"web-gateway" -> immutable.Seq(ServiceAcl.forPathRegex("(?!/api/).*"))
)
)
override implicit lazy val executionContext: ExecutionContext = actorSystem.dispatcher
override lazy val router = {
val prefix = "/"
wire[Routes]
}
lazy val monitorService = serviceClient.implement[MonitorService]
lazy val main = wire[Main]
lazy val assets = wire[Assets]
}
class WebGatewayLoader extends ApplicationLoader {
override def load(context: Context) = {
Common.loaderEnvironment(context)
println(context.environment.mode)
context.environment.mode match {
case Mode.Dev =>
new WebGateway(context) with LagomDevModeComponents {}.application
case _ =>
new WebGateway(context) with ConsulServiceLocatorComponents {}.application
}
}
}
示例14: ServiceApplicationLoader
//设置package包名称以及导入依赖的类
package org.wex.cmsfs.format.analyze.impl
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import com.lightbend.lagom.scaladsl.pubsub.PubSubComponents
import com.lightbend.lagom.scaladsl.server._
import com.softwaremill.macwire._
import org.wex.cmsfs.elasticsearch.api.ElasticsearchService
import org.wex.cmsfs.format.analyze.api.FormatAnalyzeService
import org.wex.cmsfs.lagom.service.discovery.Common
import org.wex.cmsfs.lagom.service.discovery.consul.ConsulServiceLocatorComponents
import play.api.libs.ws.ahc.AhcWSComponents
class ServiceApplicationLoader extends LagomApplicationLoader {
override def loadDevMode(context: LagomApplicationContext): LagomApplication =
new ServiceApplication(context) with LagomDevModeComponents
override def load(context: LagomApplicationContext): LagomApplication = {
Common.loaderEnvironment(context)
new ServiceApplication(context) with ConsulServiceLocatorComponents
}
}
abstract class ServiceApplication(context: LagomApplicationContext)
extends LagomApplication(context)
with AhcWSComponents
with PubSubComponents {
override lazy val lagomServer = LagomServer.forServices(
bindService[FormatAnalyzeService].to(wire[FormatAnalyzeServiceImpl])
)
val elasticsearchService = serviceClient.implement[ElasticsearchService]
val topic = wire[FormatAnalyzeTopic]
val action = wire[FormatAnalyzeAction]
}
示例15: ServiceApplicationLoader
//设置package包名称以及导入依赖的类
package org.wex.cmsfs.format.alarm.impl
import com.lightbend.lagom.scaladsl.devmode.LagomDevModeComponents
import com.lightbend.lagom.scaladsl.pubsub.PubSubComponents
import com.lightbend.lagom.scaladsl.server._
import com.softwaremill.macwire._
import org.wex.cmsfs.format.alarm.api.FormatAlarmService
import org.wex.cmsfs.lagom.service.discovery.Common
import org.wex.cmsfs.lagom.service.discovery.consul.ConsulServiceLocatorComponents
import org.wex.cmsfs.notification.impl.NotificationService
import play.api.libs.ws.ahc.AhcWSComponents
class ServiceApplicationLoader extends LagomApplicationLoader {
override def loadDevMode(context: LagomApplicationContext): LagomApplication =
new ServiceApplication(context) with LagomDevModeComponents
override def load(context: LagomApplicationContext): LagomApplication = {
Common.loaderEnvironment(context)
new ServiceApplication(context) with ConsulServiceLocatorComponents
}
}
abstract class ServiceApplication(context: LagomApplicationContext)
extends LagomApplication(context)
with AhcWSComponents
with PubSubComponents {
override lazy val lagomServer = LagomServer.forServices(
bindService[FormatAlarmService].to(wire[FormatAlarmServiceImpl])
)
val notificationService = serviceClient.implement[NotificationService]
val topic = wire[FormatAlarmTopic]
val action = wire[FormatAlarmAction]
}