├── .gitignore ├── README.md ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── log └── translator-2016-06 ├── settings.gradle └── src ├── main ├── java │ └── io │ │ └── dddbyexamples │ │ └── eventsource │ │ ├── Application.java │ │ ├── boundary │ │ └── ShopItems.java │ │ ├── domain │ │ └── shopitem │ │ │ ├── ShopItem.java │ │ │ ├── ShopItemRepository.java │ │ │ ├── ShopItemState.java │ │ │ ├── commands │ │ │ ├── Buy.java │ │ │ ├── Command.java │ │ │ ├── MarkPaymentTimeout.java │ │ │ └── Pay.java │ │ │ └── events │ │ │ ├── DomainEvent.java │ │ │ ├── ItemBought.java │ │ │ ├── ItemPaid.java │ │ │ └── ItemPaymentTimeout.java │ │ ├── eventstore │ │ ├── EventDescriptor.java │ │ ├── EventSerializer.java │ │ ├── EventSourcedShopItemRepository.java │ │ ├── EventStore.java │ │ └── EventStream.java │ │ └── readmodel │ │ ├── JdbcReadModel.java │ │ ├── PaymentTimeoutChecker.java │ │ ├── ReadModelOnDomainEventUpdater.java │ │ └── ShopItemDto.java └── resources │ ├── application.yml │ ├── db │ └── changelog │ │ └── changelog-master.xml │ └── logback.groovy └── test ├── groovy └── io │ └── dddbyexamples │ └── eventsource │ ├── CommandFixture.java │ ├── ShopItemFixture.java │ ├── domain │ └── ShopItemSpec.groovy │ ├── eventstore │ └── EventSerializerSpec.groovy │ ├── integration │ ├── IntegrationSpec.groovy │ ├── boundary │ │ └── ShopItemsIntegrationSpec.groovy │ ├── eventstore │ │ ├── EventSourcedShopItemRepositoryIntegrationSpec.groovy │ │ └── EventStoreIntegrationSpec.groovy │ └── readmodel │ │ ├── JdbcReadModelIntegrationSpec.groovy │ │ └── PaymentTimeoutCheckerIntegrationSpec.groovy │ └── readmodel │ └── ReadModelPopulatorSpec.groovy └── resources └── application-test.properties /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/README.md -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/gradlew.bat -------------------------------------------------------------------------------- /log/translator-2016-06: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/log/translator-2016-06 -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'sample-event-sourcing' 2 | -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/Application.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/Application.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/boundary/ShopItems.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/boundary/ShopItems.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/domain/shopitem/ShopItem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/domain/shopitem/ShopItem.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/domain/shopitem/ShopItemRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/domain/shopitem/ShopItemRepository.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/domain/shopitem/ShopItemState.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/domain/shopitem/ShopItemState.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/domain/shopitem/commands/Buy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/domain/shopitem/commands/Buy.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/domain/shopitem/commands/Command.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/domain/shopitem/commands/Command.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/domain/shopitem/commands/MarkPaymentTimeout.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/domain/shopitem/commands/MarkPaymentTimeout.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/domain/shopitem/commands/Pay.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/domain/shopitem/commands/Pay.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/domain/shopitem/events/DomainEvent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/domain/shopitem/events/DomainEvent.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/domain/shopitem/events/ItemBought.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/domain/shopitem/events/ItemBought.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/domain/shopitem/events/ItemPaid.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/domain/shopitem/events/ItemPaid.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/domain/shopitem/events/ItemPaymentTimeout.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/domain/shopitem/events/ItemPaymentTimeout.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/eventstore/EventDescriptor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/eventstore/EventDescriptor.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/eventstore/EventSerializer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/eventstore/EventSerializer.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/eventstore/EventSourcedShopItemRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/eventstore/EventSourcedShopItemRepository.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/eventstore/EventStore.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/eventstore/EventStore.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/eventstore/EventStream.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/eventstore/EventStream.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/readmodel/JdbcReadModel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/readmodel/JdbcReadModel.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/readmodel/PaymentTimeoutChecker.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/readmodel/PaymentTimeoutChecker.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/readmodel/ReadModelOnDomainEventUpdater.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/readmodel/ReadModelOnDomainEventUpdater.java -------------------------------------------------------------------------------- /src/main/java/io/dddbyexamples/eventsource/readmodel/ShopItemDto.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/java/io/dddbyexamples/eventsource/readmodel/ShopItemDto.java -------------------------------------------------------------------------------- /src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/resources/application.yml -------------------------------------------------------------------------------- /src/main/resources/db/changelog/changelog-master.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/resources/db/changelog/changelog-master.xml -------------------------------------------------------------------------------- /src/main/resources/logback.groovy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/main/resources/logback.groovy -------------------------------------------------------------------------------- /src/test/groovy/io/dddbyexamples/eventsource/CommandFixture.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/test/groovy/io/dddbyexamples/eventsource/CommandFixture.java -------------------------------------------------------------------------------- /src/test/groovy/io/dddbyexamples/eventsource/ShopItemFixture.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/test/groovy/io/dddbyexamples/eventsource/ShopItemFixture.java -------------------------------------------------------------------------------- /src/test/groovy/io/dddbyexamples/eventsource/domain/ShopItemSpec.groovy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/test/groovy/io/dddbyexamples/eventsource/domain/ShopItemSpec.groovy -------------------------------------------------------------------------------- /src/test/groovy/io/dddbyexamples/eventsource/eventstore/EventSerializerSpec.groovy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/test/groovy/io/dddbyexamples/eventsource/eventstore/EventSerializerSpec.groovy -------------------------------------------------------------------------------- /src/test/groovy/io/dddbyexamples/eventsource/integration/IntegrationSpec.groovy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/test/groovy/io/dddbyexamples/eventsource/integration/IntegrationSpec.groovy -------------------------------------------------------------------------------- /src/test/groovy/io/dddbyexamples/eventsource/integration/boundary/ShopItemsIntegrationSpec.groovy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/test/groovy/io/dddbyexamples/eventsource/integration/boundary/ShopItemsIntegrationSpec.groovy -------------------------------------------------------------------------------- /src/test/groovy/io/dddbyexamples/eventsource/integration/eventstore/EventSourcedShopItemRepositoryIntegrationSpec.groovy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/test/groovy/io/dddbyexamples/eventsource/integration/eventstore/EventSourcedShopItemRepositoryIntegrationSpec.groovy -------------------------------------------------------------------------------- /src/test/groovy/io/dddbyexamples/eventsource/integration/eventstore/EventStoreIntegrationSpec.groovy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/test/groovy/io/dddbyexamples/eventsource/integration/eventstore/EventStoreIntegrationSpec.groovy -------------------------------------------------------------------------------- /src/test/groovy/io/dddbyexamples/eventsource/integration/readmodel/JdbcReadModelIntegrationSpec.groovy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/test/groovy/io/dddbyexamples/eventsource/integration/readmodel/JdbcReadModelIntegrationSpec.groovy -------------------------------------------------------------------------------- /src/test/groovy/io/dddbyexamples/eventsource/integration/readmodel/PaymentTimeoutCheckerIntegrationSpec.groovy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/test/groovy/io/dddbyexamples/eventsource/integration/readmodel/PaymentTimeoutCheckerIntegrationSpec.groovy -------------------------------------------------------------------------------- /src/test/groovy/io/dddbyexamples/eventsource/readmodel/ReadModelPopulatorSpec.groovy: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/test/groovy/io/dddbyexamples/eventsource/readmodel/ReadModelPopulatorSpec.groovy -------------------------------------------------------------------------------- /src/test/resources/application-test.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ddd-by-examples/event-source-cqrs-sample/HEAD/src/test/resources/application-test.properties --------------------------------------------------------------------------------