Files
event-sourcing-examples/scala-spring
Chris Richardson b5a34c6045 Various cleanups
Changed gradle-all.sh so that Gradle JVM settings are picked up from grade.properties
Added Gradle plugin that verifies that SPRING_DATA_MONGODB_URI is set before running any tests that need MongoDB
2015-01-05 15:35:27 -08:00
..
2015-01-05 15:35:27 -08:00
2015-01-03 14:54:06 -08:00
2015-01-05 15:35:27 -08:00
2015-01-01 20:36:18 -08:00
2015-01-05 15:35:27 -08:00
2015-01-03 14:54:06 -08:00

This is the Scala/Spring version of the Event Sourcing/CQRS money transfer example application.

This application consists of three microservices:

  • Account Service - the command side business logic for Accounts
  • Money Transfer Service - the command side business logic for Money Transfers
  • Query service - query side implementation of a MongoDB-based, denormalized view of Accounts and MoneyTransfers

The Account Service consists of the following modules:

  • commandside-backend-accounts - the Account aggregate
  • commandside-web-accounts - a REST API for creating and retrieving Accounts

The Money Transfer Service consists of the following modules:

  • commandside-backend-transactions - the MoneyTransfer aggregate
  • commandside-web-transactions - a REST API for creating and retrieving Money Transfers

The Query Service consists the following modules:

  • queryside-backend - MongoDB-based, denormalized view of Accounts and MoneyTransfers
  • queryside-web - a REST API for querying the denormalized view

In order to be used with the embedded Event Store, the three services are currently packaged as a single monolithic web application:

  • monolithic-web - all-in-one, monolithic packaging of the application

As well as the above modules there are also:

  • common-backend - code that is shared between the command side and the query side, primarily events and value objects
  • backend-integration-tests - integrations tests for the backend