├── .editorconfig ├── .gitattributes ├── .github └── workflows │ └── ci.yml ├── .gitignore ├── .scalafmt.conf ├── CHANGELOG.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── docker ├── README.md ├── cassandra │ ├── .gitattributes │ ├── Dockerfile │ └── conf │ │ └── cassandra.yaml ├── docker-compose.yml └── mariadb │ └── initdb │ ├── 0_Init.sql │ └── README.md ├── docs ├── cassandra-ops.md └── mariadb-ops.md ├── exercise-accord-basic └── src │ └── main │ └── scala │ └── example │ ├── BasicExample.scala │ ├── EitherExample.scala │ ├── ValidateExample.scala │ ├── ValidationResultExample.scala │ └── ValidatorDefinitionExample.scala ├── exercise-akka-basic └── src │ ├── main │ ├── resources │ │ └── application.conf │ └── scala │ │ ├── answer │ │ ├── Answer1.scala │ │ ├── Answer2.scala │ │ └── Answer4.scala │ │ ├── example │ │ ├── AskExample.scala │ │ ├── EchoActorExample.scala │ │ ├── PrintActorExample.scala │ │ └── TellExample.scala │ │ └── exercise │ │ ├── Exercise1.scala │ │ ├── Exercise2.scala │ │ └── Exercise4.scala │ └── test │ └── scala │ ├── answer │ └── Answer3.scala │ ├── example │ └── EchoActorSpec.scala │ ├── exercise │ └── Exercise3.scala │ └── testing │ ├── tagobjects │ └── ExerciseTest.scala │ └── tags │ └── ExerciseTest.java ├── exercise-akka-http-basic └── src │ └── main │ └── scala │ ├── answer │ ├── Answer1.scala │ ├── Answer2A.scala │ ├── Answer2B.scala │ └── Answer2C.scala │ ├── example │ ├── BasicExample.scala │ ├── EntityExample.scala │ ├── MarshallingExample.scala │ ├── PathExample.scala │ ├── PathMatcherExample.scala │ └── QueryParameterExample.scala │ └── exercise │ ├── Exercise1.scala │ ├── Exercise2A.scala │ ├── Exercise2B.scala │ └── Exercise2C.scala ├── exercise-akka-persistence-basic ├── README.md └── src │ ├── main │ ├── resources │ │ └── application.conf │ └── scala │ │ ├── answer │ │ └── Answer1.scala │ │ ├── example │ │ ├── CounterActorExample.scala │ │ ├── DoorActor2Example.scala │ │ └── DoorActorExample.scala │ │ └── exercise │ │ └── Exercise1.scala │ └── test │ └── scala │ ├── answer │ └── Answer1Spec.scala │ ├── example │ ├── CounterActorSpecWithEventSourcedBehaviorTestKit.scala │ └── CounterActorSpecWithPersistenceTestKit.scala │ ├── exercise │ └── Exercise1Spec.scala │ └── testing │ ├── tagobjects │ └── ExerciseTest.scala │ └── tags │ └── ExerciseTest.java ├── exercise-scala-basic └── src │ └── main │ └── scala │ ├── answer │ ├── Answer1.scala │ ├── Answer2A.scala │ ├── Answer2B.scala │ ├── Answer3.scala │ ├── Answer4.scala │ ├── Answer5A.scala │ ├── Answer5B.scala │ └── Answer6.scala │ ├── example │ ├── CaseClassExample.scala │ ├── ClassExample.scala │ ├── ExpressionExample.scala │ ├── FutureExample.scala │ ├── FutureFailureExample.scala │ ├── FutureMapExample.scala │ ├── IfExample.scala │ ├── IfExample2.scala │ ├── MatchExample.scala │ ├── MyApplication.scala │ ├── ObjectApplyExample.scala │ ├── ObjectExample.scala │ ├── PatternMatchAdvancedExample.scala │ ├── TraitExample.scala │ ├── TypeExample.scala │ ├── VariableExample.scala │ └── VectorExample.scala │ └── exercise │ ├── Exercise1.scala │ ├── Exercise2A.scala │ ├── Exercise2B.scala │ ├── Exercise3.scala │ ├── Exercise4.scala │ ├── Exercise5A.scala │ ├── Exercise5B.scala │ └── Exercise6.scala ├── exercise-slick-basic └── src │ └── main │ ├── resources │ └── application.conf │ └── scala │ ├── BasicExample.scala │ └── DBIOExample.scala ├── project ├── Dependencies.scala ├── build.properties └── plugins.sbt ├── sample-app └── src │ ├── main │ ├── resources │ │ ├── akka-cluster.conf │ │ ├── akka-persistence-cassandra.conf │ │ ├── akka.conf │ │ ├── application.conf │ │ └── logback.xml │ └── scala │ │ └── example │ │ ├── adapter │ │ ├── ConcertError.scala │ │ ├── ConcertId.scala │ │ ├── ConcertTicketId.scala │ │ ├── command │ │ │ └── BoxOfficeService.scala │ │ ├── projection │ │ │ └── ConcertProjection.scala │ │ └── query │ │ │ └── ConcertRepository.scala │ │ ├── application │ │ ├── ApplicationDIDesign.scala │ │ ├── ConcertEvent.scala │ │ ├── KryoSerializable.scala │ │ ├── command │ │ │ ├── BoxOfficeServiceConfig.scala │ │ │ ├── BoxOfficeServiceException.scala │ │ │ ├── DefaultBoxOfficeService.scala │ │ │ └── actor │ │ │ │ ├── ConcertActor.scala │ │ │ │ ├── ConcertActorBehaviorFactory.scala │ │ │ │ ├── ConcertActorClusterSharding.scala │ │ │ │ ├── DefaultConcertActor.scala │ │ │ │ ├── DefaultConcertActorWithEventPersistence.scala │ │ │ │ └── MyConcertActor.scala │ │ ├── package.scala │ │ ├── projection │ │ │ ├── ConcertProjectionHandler.scala │ │ │ ├── ConcertProjectionRepository.scala │ │ │ ├── DefaultConcertProjection.scala │ │ │ ├── DefaultConcertProjectionRepository.scala │ │ │ └── MyConcertProjectionRepository.scala │ │ └── query │ │ │ └── DefaultConcertRepository.scala │ │ ├── entrypoint │ │ ├── Main.scala │ │ ├── MainDIDesign.scala │ │ ├── MainHttpApiServer.scala │ │ └── MainHttpApiServerConfig.scala │ │ ├── presentation │ │ ├── BoxOfficeExceptionHandler.scala │ │ ├── BoxOfficeResource.scala │ │ ├── DefaultBoxOfficeResource.scala │ │ ├── GlobalExceptionHandler.scala │ │ ├── MyBoxOfficeResource.scala │ │ ├── PresentationDIDesign.scala │ │ ├── ValidationException.scala │ │ ├── dsl │ │ │ └── ConcertPathMatchers.scala │ │ ├── package.scala │ │ └── protocol │ │ │ ├── BuyConcertTicketsRequestBody.scala │ │ │ ├── BuyConcertTicketsResponseBody.scala │ │ │ ├── CancelConcertResponseBody.scala │ │ │ ├── ConcertJsonProtocol.scala │ │ │ ├── CreateConcertRequestBody.scala │ │ │ ├── CreateConcertResponseBody.scala │ │ │ ├── GetConcertResponseBody.scala │ │ │ └── GetConcertsResponseBody.scala │ │ └── readmodel │ │ ├── ConcertDatabaseService.scala │ │ ├── ConcertDatabaseTables.scala │ │ ├── DefaultConcertDatabaseService.scala │ │ ├── DefaultConcertDatabaseServiceConfig.scala │ │ └── ReadModelDIDesign.scala │ └── test │ ├── resources │ ├── README.md │ ├── application.conf │ └── logback-test.xml │ └── scala │ ├── example │ ├── ActorSpecBase.scala │ ├── DatabaseSpecBase.scala │ ├── RouteSpecBase.scala │ ├── SpecBase.scala │ ├── adapter │ │ ├── ConcertIdGenerator.scala │ │ ├── ConcertIdGeneratorSupport.scala │ │ └── ConcertIdSpec.scala │ ├── application │ │ ├── MyConcertActorBindSpec.scala │ │ ├── MyConcertProjectionRepositoryBindSpec.scala │ │ ├── command │ │ │ ├── ClusterShardingSpecLike.scala │ │ │ ├── DefaultBoxOfficeServiceSpec.scala │ │ │ └── actor │ │ │ │ ├── ConcertActorBehaviors.scala │ │ │ │ ├── ConcertActorClusterShardingBehaviors.scala │ │ │ │ ├── ConcertActorSpecBase.scala │ │ │ │ ├── DefaultConcertActorSpec.scala │ │ │ │ ├── DefaultConcertActorWithEventPersistenceSpec.scala │ │ │ │ └── MyConcertActorSpec.scala │ │ ├── projection │ │ │ ├── DatabaseConcertProjectionRepositoryBehaviors.scala │ │ │ ├── DefaultConcertProjectionRepositorySpec.scala │ │ │ └── MyConcertProjectionRepositorySpec.scala │ │ └── query │ │ │ └── DefaultConcertRepositorySpec.scala │ ├── entrypoint │ │ └── MainDIDesignSpec.scala │ ├── presentation │ │ ├── BoxOfficeResourceBehaviors.scala │ │ ├── DefaultBoxOfficeResourceSpec.scala │ │ ├── MyBoxOfficeResourceBindSpec.scala │ │ └── MyBoxOfficeResourceSpec.scala │ └── testing │ │ ├── tagobjects │ │ └── ExerciseTest.scala │ │ └── tags │ │ └── ExerciseTest.java │ └── testkit │ ├── AirframeDiSessionSupport.scala │ ├── AkkaSpanScaleFactorSupport.scala │ └── AkkaTypedSpanScaleFactorSupport.scala └── scripts ├── runServer1.sh ├── runServer2.sh └── runServer3.sh /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/.editorconfig -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/.gitattributes -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/.gitignore -------------------------------------------------------------------------------- /.scalafmt.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/.scalafmt.conf -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/README.md -------------------------------------------------------------------------------- /docker/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/docker/README.md -------------------------------------------------------------------------------- /docker/cassandra/.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/docker/cassandra/.gitattributes -------------------------------------------------------------------------------- /docker/cassandra/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/docker/cassandra/Dockerfile -------------------------------------------------------------------------------- /docker/cassandra/conf/cassandra.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/docker/cassandra/conf/cassandra.yaml -------------------------------------------------------------------------------- /docker/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/docker/docker-compose.yml -------------------------------------------------------------------------------- /docker/mariadb/initdb/0_Init.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/docker/mariadb/initdb/0_Init.sql -------------------------------------------------------------------------------- /docker/mariadb/initdb/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/docker/mariadb/initdb/README.md -------------------------------------------------------------------------------- /docs/cassandra-ops.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/docs/cassandra-ops.md -------------------------------------------------------------------------------- /docs/mariadb-ops.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/docs/mariadb-ops.md -------------------------------------------------------------------------------- /exercise-accord-basic/src/main/scala/example/BasicExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-accord-basic/src/main/scala/example/BasicExample.scala -------------------------------------------------------------------------------- /exercise-accord-basic/src/main/scala/example/EitherExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-accord-basic/src/main/scala/example/EitherExample.scala -------------------------------------------------------------------------------- /exercise-accord-basic/src/main/scala/example/ValidateExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-accord-basic/src/main/scala/example/ValidateExample.scala -------------------------------------------------------------------------------- /exercise-accord-basic/src/main/scala/example/ValidationResultExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-accord-basic/src/main/scala/example/ValidationResultExample.scala -------------------------------------------------------------------------------- /exercise-accord-basic/src/main/scala/example/ValidatorDefinitionExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-accord-basic/src/main/scala/example/ValidatorDefinitionExample.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/main/resources/application.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/main/resources/application.conf -------------------------------------------------------------------------------- /exercise-akka-basic/src/main/scala/answer/Answer1.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/main/scala/answer/Answer1.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/main/scala/answer/Answer2.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/main/scala/answer/Answer2.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/main/scala/answer/Answer4.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/main/scala/answer/Answer4.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/main/scala/example/AskExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/main/scala/example/AskExample.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/main/scala/example/EchoActorExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/main/scala/example/EchoActorExample.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/main/scala/example/PrintActorExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/main/scala/example/PrintActorExample.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/main/scala/example/TellExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/main/scala/example/TellExample.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/main/scala/exercise/Exercise1.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/main/scala/exercise/Exercise1.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/main/scala/exercise/Exercise2.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/main/scala/exercise/Exercise2.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/main/scala/exercise/Exercise4.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/main/scala/exercise/Exercise4.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/test/scala/answer/Answer3.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/test/scala/answer/Answer3.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/test/scala/example/EchoActorSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/test/scala/example/EchoActorSpec.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/test/scala/exercise/Exercise3.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/test/scala/exercise/Exercise3.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/test/scala/testing/tagobjects/ExerciseTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/test/scala/testing/tagobjects/ExerciseTest.scala -------------------------------------------------------------------------------- /exercise-akka-basic/src/test/scala/testing/tags/ExerciseTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-basic/src/test/scala/testing/tags/ExerciseTest.java -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/answer/Answer1.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/answer/Answer1.scala -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/answer/Answer2A.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/answer/Answer2A.scala -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/answer/Answer2B.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/answer/Answer2B.scala -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/answer/Answer2C.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/answer/Answer2C.scala -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/example/BasicExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/example/BasicExample.scala -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/example/EntityExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/example/EntityExample.scala -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/example/MarshallingExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/example/MarshallingExample.scala -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/example/PathExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/example/PathExample.scala -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/example/PathMatcherExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/example/PathMatcherExample.scala -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/example/QueryParameterExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/example/QueryParameterExample.scala -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/exercise/Exercise1.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/exercise/Exercise1.scala -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/exercise/Exercise2A.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/exercise/Exercise2A.scala -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/exercise/Exercise2B.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/exercise/Exercise2B.scala -------------------------------------------------------------------------------- /exercise-akka-http-basic/src/main/scala/exercise/Exercise2C.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-http-basic/src/main/scala/exercise/Exercise2C.scala -------------------------------------------------------------------------------- /exercise-akka-persistence-basic/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-persistence-basic/README.md -------------------------------------------------------------------------------- /exercise-akka-persistence-basic/src/main/resources/application.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-persistence-basic/src/main/resources/application.conf -------------------------------------------------------------------------------- /exercise-akka-persistence-basic/src/main/scala/answer/Answer1.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-persistence-basic/src/main/scala/answer/Answer1.scala -------------------------------------------------------------------------------- /exercise-akka-persistence-basic/src/main/scala/example/CounterActorExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-persistence-basic/src/main/scala/example/CounterActorExample.scala -------------------------------------------------------------------------------- /exercise-akka-persistence-basic/src/main/scala/example/DoorActor2Example.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-persistence-basic/src/main/scala/example/DoorActor2Example.scala -------------------------------------------------------------------------------- /exercise-akka-persistence-basic/src/main/scala/example/DoorActorExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-persistence-basic/src/main/scala/example/DoorActorExample.scala -------------------------------------------------------------------------------- /exercise-akka-persistence-basic/src/main/scala/exercise/Exercise1.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-persistence-basic/src/main/scala/exercise/Exercise1.scala -------------------------------------------------------------------------------- /exercise-akka-persistence-basic/src/test/scala/answer/Answer1Spec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-persistence-basic/src/test/scala/answer/Answer1Spec.scala -------------------------------------------------------------------------------- /exercise-akka-persistence-basic/src/test/scala/example/CounterActorSpecWithEventSourcedBehaviorTestKit.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-persistence-basic/src/test/scala/example/CounterActorSpecWithEventSourcedBehaviorTestKit.scala -------------------------------------------------------------------------------- /exercise-akka-persistence-basic/src/test/scala/example/CounterActorSpecWithPersistenceTestKit.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-persistence-basic/src/test/scala/example/CounterActorSpecWithPersistenceTestKit.scala -------------------------------------------------------------------------------- /exercise-akka-persistence-basic/src/test/scala/exercise/Exercise1Spec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-persistence-basic/src/test/scala/exercise/Exercise1Spec.scala -------------------------------------------------------------------------------- /exercise-akka-persistence-basic/src/test/scala/testing/tagobjects/ExerciseTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-persistence-basic/src/test/scala/testing/tagobjects/ExerciseTest.scala -------------------------------------------------------------------------------- /exercise-akka-persistence-basic/src/test/scala/testing/tags/ExerciseTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-akka-persistence-basic/src/test/scala/testing/tags/ExerciseTest.java -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/answer/Answer1.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/answer/Answer1.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/answer/Answer2A.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/answer/Answer2A.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/answer/Answer2B.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/answer/Answer2B.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/answer/Answer3.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/answer/Answer3.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/answer/Answer4.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/answer/Answer4.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/answer/Answer5A.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/answer/Answer5A.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/answer/Answer5B.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/answer/Answer5B.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/answer/Answer6.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/answer/Answer6.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/CaseClassExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/CaseClassExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/ClassExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/ClassExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/ExpressionExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/ExpressionExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/FutureExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/FutureExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/FutureFailureExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/FutureFailureExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/FutureMapExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/FutureMapExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/IfExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/IfExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/IfExample2.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/IfExample2.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/MatchExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/MatchExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/MyApplication.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/MyApplication.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/ObjectApplyExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/ObjectApplyExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/ObjectExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/ObjectExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/PatternMatchAdvancedExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/PatternMatchAdvancedExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/TraitExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/TraitExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/TypeExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/TypeExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/VariableExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/VariableExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/example/VectorExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/example/VectorExample.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/exercise/Exercise1.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/exercise/Exercise1.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/exercise/Exercise2A.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/exercise/Exercise2A.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/exercise/Exercise2B.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/exercise/Exercise2B.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/exercise/Exercise3.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/exercise/Exercise3.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/exercise/Exercise4.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/exercise/Exercise4.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/exercise/Exercise5A.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/exercise/Exercise5A.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/exercise/Exercise5B.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/exercise/Exercise5B.scala -------------------------------------------------------------------------------- /exercise-scala-basic/src/main/scala/exercise/Exercise6.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-scala-basic/src/main/scala/exercise/Exercise6.scala -------------------------------------------------------------------------------- /exercise-slick-basic/src/main/resources/application.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-slick-basic/src/main/resources/application.conf -------------------------------------------------------------------------------- /exercise-slick-basic/src/main/scala/BasicExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-slick-basic/src/main/scala/BasicExample.scala -------------------------------------------------------------------------------- /exercise-slick-basic/src/main/scala/DBIOExample.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/exercise-slick-basic/src/main/scala/DBIOExample.scala -------------------------------------------------------------------------------- /project/Dependencies.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/project/Dependencies.scala -------------------------------------------------------------------------------- /project/build.properties: -------------------------------------------------------------------------------- 1 | sbt.version = 1.5.5 2 | -------------------------------------------------------------------------------- /project/plugins.sbt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/project/plugins.sbt -------------------------------------------------------------------------------- /sample-app/src/main/resources/akka-cluster.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/resources/akka-cluster.conf -------------------------------------------------------------------------------- /sample-app/src/main/resources/akka-persistence-cassandra.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/resources/akka-persistence-cassandra.conf -------------------------------------------------------------------------------- /sample-app/src/main/resources/akka.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/resources/akka.conf -------------------------------------------------------------------------------- /sample-app/src/main/resources/application.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/resources/application.conf -------------------------------------------------------------------------------- /sample-app/src/main/resources/logback.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/resources/logback.xml -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/adapter/ConcertError.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/adapter/ConcertError.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/adapter/ConcertId.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/adapter/ConcertId.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/adapter/ConcertTicketId.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/adapter/ConcertTicketId.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/adapter/command/BoxOfficeService.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/adapter/command/BoxOfficeService.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/adapter/projection/ConcertProjection.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/adapter/projection/ConcertProjection.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/adapter/query/ConcertRepository.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/adapter/query/ConcertRepository.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/ApplicationDIDesign.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/ApplicationDIDesign.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/ConcertEvent.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/ConcertEvent.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/KryoSerializable.scala: -------------------------------------------------------------------------------- 1 | package example.application 2 | 3 | /** kryo でシリアライズするためのマーカー 4 | */ 5 | trait KryoSerializable 6 | -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/command/BoxOfficeServiceConfig.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/command/BoxOfficeServiceConfig.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/command/BoxOfficeServiceException.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/command/BoxOfficeServiceException.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/command/DefaultBoxOfficeService.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/command/DefaultBoxOfficeService.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/command/actor/ConcertActor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/command/actor/ConcertActor.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/command/actor/ConcertActorBehaviorFactory.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/command/actor/ConcertActorBehaviorFactory.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/command/actor/ConcertActorClusterSharding.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/command/actor/ConcertActorClusterSharding.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/command/actor/DefaultConcertActor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/command/actor/DefaultConcertActor.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/command/actor/DefaultConcertActorWithEventPersistence.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/command/actor/DefaultConcertActorWithEventPersistence.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/command/actor/MyConcertActor.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/command/actor/MyConcertActor.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/package.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/package.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/projection/ConcertProjectionHandler.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/projection/ConcertProjectionHandler.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/projection/ConcertProjectionRepository.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/projection/ConcertProjectionRepository.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/projection/DefaultConcertProjection.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/projection/DefaultConcertProjection.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/projection/DefaultConcertProjectionRepository.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/projection/DefaultConcertProjectionRepository.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/projection/MyConcertProjectionRepository.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/projection/MyConcertProjectionRepository.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/application/query/DefaultConcertRepository.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/application/query/DefaultConcertRepository.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/entrypoint/Main.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/entrypoint/Main.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/entrypoint/MainDIDesign.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/entrypoint/MainDIDesign.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/entrypoint/MainHttpApiServer.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/entrypoint/MainHttpApiServer.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/entrypoint/MainHttpApiServerConfig.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/entrypoint/MainHttpApiServerConfig.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/BoxOfficeExceptionHandler.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/BoxOfficeExceptionHandler.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/BoxOfficeResource.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/BoxOfficeResource.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/DefaultBoxOfficeResource.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/DefaultBoxOfficeResource.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/GlobalExceptionHandler.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/GlobalExceptionHandler.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/MyBoxOfficeResource.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/MyBoxOfficeResource.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/PresentationDIDesign.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/PresentationDIDesign.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/ValidationException.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/ValidationException.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/dsl/ConcertPathMatchers.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/dsl/ConcertPathMatchers.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/package.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/package.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/protocol/BuyConcertTicketsRequestBody.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/protocol/BuyConcertTicketsRequestBody.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/protocol/BuyConcertTicketsResponseBody.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/protocol/BuyConcertTicketsResponseBody.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/protocol/CancelConcertResponseBody.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/protocol/CancelConcertResponseBody.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/protocol/ConcertJsonProtocol.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/protocol/ConcertJsonProtocol.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/protocol/CreateConcertRequestBody.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/protocol/CreateConcertRequestBody.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/protocol/CreateConcertResponseBody.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/protocol/CreateConcertResponseBody.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/protocol/GetConcertResponseBody.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/protocol/GetConcertResponseBody.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/presentation/protocol/GetConcertsResponseBody.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/presentation/protocol/GetConcertsResponseBody.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/readmodel/ConcertDatabaseService.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/readmodel/ConcertDatabaseService.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/readmodel/ConcertDatabaseTables.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/readmodel/ConcertDatabaseTables.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/readmodel/DefaultConcertDatabaseService.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/readmodel/DefaultConcertDatabaseService.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/readmodel/DefaultConcertDatabaseServiceConfig.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/readmodel/DefaultConcertDatabaseServiceConfig.scala -------------------------------------------------------------------------------- /sample-app/src/main/scala/example/readmodel/ReadModelDIDesign.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/main/scala/example/readmodel/ReadModelDIDesign.scala -------------------------------------------------------------------------------- /sample-app/src/test/resources/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/resources/README.md -------------------------------------------------------------------------------- /sample-app/src/test/resources/application.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/resources/application.conf -------------------------------------------------------------------------------- /sample-app/src/test/resources/logback-test.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/resources/logback-test.xml -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/ActorSpecBase.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/ActorSpecBase.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/DatabaseSpecBase.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/DatabaseSpecBase.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/RouteSpecBase.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/RouteSpecBase.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/SpecBase.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/SpecBase.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/adapter/ConcertIdGenerator.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/adapter/ConcertIdGenerator.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/adapter/ConcertIdGeneratorSupport.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/adapter/ConcertIdGeneratorSupport.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/adapter/ConcertIdSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/adapter/ConcertIdSpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/MyConcertActorBindSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/MyConcertActorBindSpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/MyConcertProjectionRepositoryBindSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/MyConcertProjectionRepositoryBindSpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/command/ClusterShardingSpecLike.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/command/ClusterShardingSpecLike.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/command/DefaultBoxOfficeServiceSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/command/DefaultBoxOfficeServiceSpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/command/actor/ConcertActorBehaviors.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/command/actor/ConcertActorBehaviors.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/command/actor/ConcertActorClusterShardingBehaviors.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/command/actor/ConcertActorClusterShardingBehaviors.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/command/actor/ConcertActorSpecBase.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/command/actor/ConcertActorSpecBase.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/command/actor/DefaultConcertActorSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/command/actor/DefaultConcertActorSpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/command/actor/DefaultConcertActorWithEventPersistenceSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/command/actor/DefaultConcertActorWithEventPersistenceSpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/command/actor/MyConcertActorSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/command/actor/MyConcertActorSpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/projection/DatabaseConcertProjectionRepositoryBehaviors.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/projection/DatabaseConcertProjectionRepositoryBehaviors.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/projection/DefaultConcertProjectionRepositorySpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/projection/DefaultConcertProjectionRepositorySpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/projection/MyConcertProjectionRepositorySpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/projection/MyConcertProjectionRepositorySpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/application/query/DefaultConcertRepositorySpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/application/query/DefaultConcertRepositorySpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/entrypoint/MainDIDesignSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/entrypoint/MainDIDesignSpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/presentation/BoxOfficeResourceBehaviors.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/presentation/BoxOfficeResourceBehaviors.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/presentation/DefaultBoxOfficeResourceSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/presentation/DefaultBoxOfficeResourceSpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/presentation/MyBoxOfficeResourceBindSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/presentation/MyBoxOfficeResourceBindSpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/presentation/MyBoxOfficeResourceSpec.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/presentation/MyBoxOfficeResourceSpec.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/testing/tagobjects/ExerciseTest.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/testing/tagobjects/ExerciseTest.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/example/testing/tags/ExerciseTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/example/testing/tags/ExerciseTest.java -------------------------------------------------------------------------------- /sample-app/src/test/scala/testkit/AirframeDiSessionSupport.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/testkit/AirframeDiSessionSupport.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/testkit/AkkaSpanScaleFactorSupport.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/testkit/AkkaSpanScaleFactorSupport.scala -------------------------------------------------------------------------------- /sample-app/src/test/scala/testkit/AkkaTypedSpanScaleFactorSupport.scala: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/sample-app/src/test/scala/testkit/AkkaTypedSpanScaleFactorSupport.scala -------------------------------------------------------------------------------- /scripts/runServer1.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/scripts/runServer1.sh -------------------------------------------------------------------------------- /scripts/runServer2.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/scripts/runServer2.sh -------------------------------------------------------------------------------- /scripts/runServer3.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lerna-stack/lerna-handson/HEAD/scripts/runServer3.sh --------------------------------------------------------------------------------