├── .github ├── pull_request_template.md └── workflows │ ├── E2E_test.yaml │ ├── build_image_by_tag.yaml │ └── pr.yaml ├── .gitignore ├── Docker └── config │ ├── .env.docker │ ├── grafana │ └── provisioning │ │ ├── dashboards │ │ ├── dashboard.yml │ │ ├── logs_traces_metrics.json │ │ └── spring-boot-observability_rev1.json │ │ └── datasources │ │ └── datasource.yml │ ├── mock-server │ ├── order-command │ │ └── order-command.json │ └── order-query │ │ └── order-query.json │ ├── prometheus │ └── prometheus.yml │ ├── promtail │ └── promtail-config.yaml │ └── tempo │ └── tempo-local.yaml ├── README.md ├── act ├── cache.env └── tagEvent.json ├── backstage ├── all-apis.yaml ├── all-components.yaml ├── all.yaml ├── apis │ ├── order-command-side-api.yaml │ ├── order-query-side-api.yaml │ ├── payment-command-side-api.yaml │ ├── payment-query-side-api.yaml │ ├── shipment-command-side-api.yaml │ └── shipment-query-side-api.yaml ├── components │ ├── order-command-side-component.yaml │ ├── order-query-side-component.yaml │ ├── payment-command-side-component.yaml │ ├── payment-query-side-component.yaml │ ├── shipment-command-side-component.yaml │ └── shipment-query-side-component.yaml ├── docs │ ├── code-structure.md │ ├── event-stream.md │ ├── images │ │ └── event_storming_result.jpg │ ├── index.md │ ├── order.md │ ├── payment.md │ ├── shipment.md │ └── system-architecture.md └── mkdocs.yml ├── compose.yml ├── config ├── application-cluster.yaml ├── application-docker-support-test.yaml ├── application-docker-support.yaml ├── application-idempotency.yaml ├── application-kafka-consumer.yaml ├── application-kafka-producer.yaml ├── application-kafka.yaml ├── application-observe.yaml ├── application-query-side.yaml └── application-redis.yaml ├── doc-image └── event_storming_result.jpg ├── gradle.properties ├── gradle ├── bootrun.gradle ├── jib.gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── modules ├── build.gradle ├── client │ ├── build.gradle │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── example │ │ │ │ └── event │ │ │ │ └── sourcing │ │ │ │ └── order │ │ │ │ └── poc │ │ │ │ └── modules │ │ │ │ └── client │ │ │ │ └── order │ │ │ │ ├── OrderCommandClient.java │ │ │ │ ├── OrderQueryClient.java │ │ │ │ ├── config │ │ │ │ ├── OrderCommandClientConfig.java │ │ │ │ └── OrderQueryClientConfig.java │ │ │ │ ├── decoder │ │ │ │ └── CustomErrorDecoder.java │ │ │ │ ├── exception │ │ │ │ ├── BadRequestException.java │ │ │ │ └── ResourceNotFoundException.java │ │ │ │ └── model │ │ │ │ ├── ResourceName.java │ │ │ │ ├── V1Order.java │ │ │ │ └── V1OrderStatus.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── spring │ │ │ └── org.springframework.boot.autoconfigure.AutoConfiguration.imports │ │ └── test │ │ ├── java │ │ └── org │ │ │ └── example │ │ │ └── event │ │ │ └── sourcing │ │ │ └── order │ │ │ └── poc │ │ │ └── modules │ │ │ └── client │ │ │ └── order │ │ │ ├── ObserveMockConfig.java │ │ │ ├── OrderCommandClientTest.java │ │ │ └── OrderQueryClientTest.java │ │ └── resources │ │ ├── application.yaml │ │ └── logback-test.xml ├── common │ ├── build.gradle │ └── src │ │ └── main │ │ └── java │ │ └── org │ │ └── example │ │ └── event │ │ └── sourcing │ │ └── order │ │ └── poc │ │ └── modules │ │ └── common │ │ ├── config │ │ └── ApiExceptionHandler.java │ │ └── model │ │ ├── Order.java │ │ ├── Payment.java │ │ └── Shipment.java ├── event │ ├── build.gradle │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── example │ │ │ └── event │ │ │ └── sourcing │ │ │ └── order │ │ │ └── poc │ │ │ └── modules │ │ │ └── event │ │ │ ├── config │ │ │ └── TopicConfig.java │ │ │ └── model │ │ │ ├── OrderEvent.java │ │ │ ├── OrderEventName.java │ │ │ ├── PaymentEvent.java │ │ │ ├── PaymentEventName.java │ │ │ ├── ShipmentEvent.java │ │ │ └── ShipmentEventName.java │ │ └── resources │ │ └── META-INF │ │ └── spring │ │ └── org.springframework.boot.autoconfigure.AutoConfiguration.imports ├── idempotency │ ├── build.gradle │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── example │ │ │ │ └── event │ │ │ │ └── sourcing │ │ │ │ └── order │ │ │ │ └── poc │ │ │ │ └── modules │ │ │ │ └── idempotency │ │ │ │ ├── config │ │ │ │ └── IdempotencyConfig.java │ │ │ │ └── filter │ │ │ │ └── IdempotenceFilter.java │ │ └── resources │ │ │ └── META-INF │ │ │ └── spring │ │ │ └── org.springframework.boot.autoconfigure.AutoConfiguration.imports │ │ └── test │ │ └── java │ │ └── org │ │ └── example │ │ └── event │ │ └── sourcing │ │ └── order │ │ └── poc │ │ └── modules │ │ └── idempotency │ │ └── filter │ │ └── IdempotenceFilterTest.java └── observation │ ├── build.gradle │ └── src │ └── main │ ├── java │ └── org │ │ └── example │ │ └── event │ │ └── sourcing │ │ └── order │ │ └── poc │ │ └── modules │ │ └── observation │ │ ├── annotation │ │ └── LogInfo.java │ │ ├── aop │ │ ├── AbstractLogAspect.java │ │ ├── AbstractObserveAroundMethodHandler.java │ │ ├── DefaultLogAspect.java │ │ └── DefaultObserveAroundMethodHandler.java │ │ └── config │ │ ├── LogAspectConfig.java │ │ └── ObserveConfiguration.java │ └── resources │ ├── META-INF │ └── spring │ │ └── org.springframework.boot.autoconfigure.AutoConfiguration.imports │ ├── espoc-logback.xml │ └── file-appender.xml ├── order ├── build.gradle ├── command-side │ ├── build.gradle │ └── src │ │ ├── main │ │ ├── java │ │ │ └── org │ │ │ │ └── example │ │ │ │ └── event │ │ │ │ └── sourcing │ │ │ │ └── order │ │ │ │ └── poc │ │ │ │ └── command │ │ │ │ └── order │ │ │ │ ├── CommandSideOrderApplication.java │ │ │ │ ├── controller │ │ │ │ └── OrderController.java │ │ │ │ ├── producer │ │ │ │ └── OrderEventProducer.java │ │ │ │ └── service │ │ │ │ └── OrderService.java │ │ └── resources │ │ │ └── application.yaml │ │ └── test │ │ └── java │ │ └── org │ │ └── example │ │ └── event │ │ └── sourcing │ │ └── order │ │ └── poc │ │ └── command │ │ └── order │ │ ├── producer │ │ └── OrderEventProducerTest.java │ │ └── service │ │ └── OrderServiceTest.java ├── event-handler │ ├── build.gradle │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── example │ │ │ └── event │ │ │ └── sourcing │ │ │ └── order │ │ │ └── poc │ │ │ └── handler │ │ │ └── order │ │ │ ├── EventHandlerOrderApplication.java │ │ │ ├── consumer │ │ │ └── OrderConsumer.java │ │ │ └── domain │ │ │ ├── OrderEventHandler.java │ │ │ └── impl │ │ │ └── OrderEventHandlerImpl.java │ │ └── resources │ │ └── application.yaml └── query-side │ ├── build.gradle │ └── src │ └── main │ ├── java │ └── org │ │ └── example │ │ └── event │ │ └── sourcing │ │ └── order │ │ └── poc │ │ └── query │ │ └── order │ │ ├── QuerySideOrderApplication.java │ │ ├── config │ │ └── KafkaConfig.java │ │ ├── consumer │ │ └── OrderEventConsumer.java │ │ └── domain │ │ ├── entity │ │ ├── OrderEventRecord.java │ │ ├── OrderRecord.java │ │ └── OrderStatus.java │ │ ├── handler │ │ ├── OrderEventRecordHandler.java │ │ ├── OrderRecordHandler.java │ │ └── impl │ │ │ ├── OrderEventRecordHandlerImpl.java │ │ │ └── OrderRecordHandlerImpl.java │ │ └── repo │ │ ├── OrderEventRepository.java │ │ └── OrderRepository.java │ └── resources │ └── application.yaml ├── payment ├── build.gradle ├── command-side │ ├── build.gradle │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── example │ │ │ └── event │ │ │ └── sourcing │ │ │ └── order │ │ │ └── poc │ │ │ └── command │ │ │ └── payment │ │ │ ├── CommandSidePaymentApplication.java │ │ │ ├── controller │ │ │ └── PaymentController.java │ │ │ ├── producer │ │ │ └── PaymentEventProducer.java │ │ │ └── service │ │ │ └── PaymentService.java │ │ └── resources │ │ └── application.yaml ├── event-handler │ ├── build.gradle │ └── src │ │ └── main │ │ ├── java │ │ └── org │ │ │ └── example │ │ │ └── event │ │ │ └── sourcing │ │ │ └── order │ │ │ └── poc │ │ │ └── handler │ │ │ └── payment │ │ │ ├── EventHandlerPaymentApplication.java │ │ │ ├── consumer │ │ │ └── PaymentConsumer.java │ │ │ └── domain │ │ │ ├── PaymentEventHandler.java │ │ │ └── impl │ │ │ └── PaymentEventHandlerImpl.java │ │ └── resources │ │ └── application.yaml └── query-side │ ├── build.gradle │ └── src │ └── main │ ├── java │ └── org │ │ └── example │ │ └── event │ │ └── sourcing │ │ └── order │ │ └── poc │ │ └── query │ │ └── payment │ │ ├── QuerySidePaymentApplication.java │ │ ├── config │ │ └── KafkaConfig.java │ │ ├── consumer │ │ └── PaymentConsumer.java │ │ └── domain │ │ ├── entity │ │ └── PaymentRecord.java │ │ ├── handler │ │ ├── PaymentRecordHandler.java │ │ └── impl │ │ │ └── PaymentRecordHandlerImpl.java │ │ └── repo │ │ └── PaymentRepository.java │ └── resources │ └── application.yaml ├── postman ├── order.postman_collection.json ├── payment.postman_collection.json └── shipment.postman_collection.json ├── settings.gradle └── shipment ├── build.gradle ├── command-side ├── build.gradle └── src │ └── main │ ├── java │ └── org │ │ └── example │ │ └── event │ │ └── sourcing │ │ └── order │ │ └── poc │ │ └── command │ │ └── shipment │ │ ├── CommandSideShipmentApplication.java │ │ ├── controller │ │ └── ShipmentController.java │ │ ├── producer │ │ └── ShipmentEventProducer.java │ │ └── service │ │ └── ShipmentService.java │ └── resources │ └── application.yaml ├── event-handler ├── build.gradle └── src │ └── main │ ├── java │ └── org │ │ └── example │ │ └── event │ │ └── sourcing │ │ └── order │ │ └── poc │ │ └── handler │ │ └── shipment │ │ ├── EventHandlerShipmentApplication.java │ │ ├── consumer │ │ └── ShipmentConsumer.java │ │ └── domain │ │ ├── ShipmentEventHandler.java │ │ └── impl │ │ └── ShipmentEventHandlerImpl.java │ └── resources │ └── application.yaml └── query-side ├── build.gradle └── src └── main ├── java └── org │ └── example │ └── event │ └── sourcing │ └── order │ └── poc │ └── query │ └── shipment │ ├── QuerySideShipmentApplication.java │ ├── config │ └── KafkaConfig.java │ ├── consumer │ └── ShipmentConsumer.java │ └── domain │ ├── entity │ └── ShipmentRecord.java │ ├── handler │ ├── ShipmentRecordHandler.java │ └── impl │ │ └── ShipmentRecordHandlerImpl.java │ └── repo │ └── ShipmentRepository.java └── resources └── application.yaml /.github/pull_request_template.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/.github/pull_request_template.md -------------------------------------------------------------------------------- /.github/workflows/E2E_test.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/.github/workflows/E2E_test.yaml -------------------------------------------------------------------------------- /.github/workflows/build_image_by_tag.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/.github/workflows/build_image_by_tag.yaml -------------------------------------------------------------------------------- /.github/workflows/pr.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/.github/workflows/pr.yaml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/.gitignore -------------------------------------------------------------------------------- /Docker/config/.env.docker: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/Docker/config/.env.docker -------------------------------------------------------------------------------- /Docker/config/grafana/provisioning/dashboards/dashboard.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/Docker/config/grafana/provisioning/dashboards/dashboard.yml -------------------------------------------------------------------------------- /Docker/config/grafana/provisioning/dashboards/logs_traces_metrics.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/Docker/config/grafana/provisioning/dashboards/logs_traces_metrics.json -------------------------------------------------------------------------------- /Docker/config/grafana/provisioning/dashboards/spring-boot-observability_rev1.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/Docker/config/grafana/provisioning/dashboards/spring-boot-observability_rev1.json -------------------------------------------------------------------------------- /Docker/config/grafana/provisioning/datasources/datasource.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/Docker/config/grafana/provisioning/datasources/datasource.yml -------------------------------------------------------------------------------- /Docker/config/mock-server/order-command/order-command.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/Docker/config/mock-server/order-command/order-command.json -------------------------------------------------------------------------------- /Docker/config/mock-server/order-query/order-query.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/Docker/config/mock-server/order-query/order-query.json -------------------------------------------------------------------------------- /Docker/config/prometheus/prometheus.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/Docker/config/prometheus/prometheus.yml -------------------------------------------------------------------------------- /Docker/config/promtail/promtail-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/Docker/config/promtail/promtail-config.yaml -------------------------------------------------------------------------------- /Docker/config/tempo/tempo-local.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/Docker/config/tempo/tempo-local.yaml -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/README.md -------------------------------------------------------------------------------- /act/cache.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/act/cache.env -------------------------------------------------------------------------------- /act/tagEvent.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/act/tagEvent.json -------------------------------------------------------------------------------- /backstage/all-apis.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/all-apis.yaml -------------------------------------------------------------------------------- /backstage/all-components.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/all-components.yaml -------------------------------------------------------------------------------- /backstage/all.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/all.yaml -------------------------------------------------------------------------------- /backstage/apis/order-command-side-api.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/apis/order-command-side-api.yaml -------------------------------------------------------------------------------- /backstage/apis/order-query-side-api.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/apis/order-query-side-api.yaml -------------------------------------------------------------------------------- /backstage/apis/payment-command-side-api.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/apis/payment-command-side-api.yaml -------------------------------------------------------------------------------- /backstage/apis/payment-query-side-api.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/apis/payment-query-side-api.yaml -------------------------------------------------------------------------------- /backstage/apis/shipment-command-side-api.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/apis/shipment-command-side-api.yaml -------------------------------------------------------------------------------- /backstage/apis/shipment-query-side-api.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/apis/shipment-query-side-api.yaml -------------------------------------------------------------------------------- /backstage/components/order-command-side-component.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/components/order-command-side-component.yaml -------------------------------------------------------------------------------- /backstage/components/order-query-side-component.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/components/order-query-side-component.yaml -------------------------------------------------------------------------------- /backstage/components/payment-command-side-component.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/components/payment-command-side-component.yaml -------------------------------------------------------------------------------- /backstage/components/payment-query-side-component.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/components/payment-query-side-component.yaml -------------------------------------------------------------------------------- /backstage/components/shipment-command-side-component.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/components/shipment-command-side-component.yaml -------------------------------------------------------------------------------- /backstage/components/shipment-query-side-component.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/components/shipment-query-side-component.yaml -------------------------------------------------------------------------------- /backstage/docs/code-structure.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/docs/code-structure.md -------------------------------------------------------------------------------- /backstage/docs/event-stream.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/docs/event-stream.md -------------------------------------------------------------------------------- /backstage/docs/images/event_storming_result.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/docs/images/event_storming_result.jpg -------------------------------------------------------------------------------- /backstage/docs/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/docs/index.md -------------------------------------------------------------------------------- /backstage/docs/order.md: -------------------------------------------------------------------------------- 1 | # Order Aggregate 2 | 3 | -------------------------------------------------------------------------------- /backstage/docs/payment.md: -------------------------------------------------------------------------------- 1 | # Payment Aggregate 2 | 3 | -------------------------------------------------------------------------------- /backstage/docs/shipment.md: -------------------------------------------------------------------------------- 1 | # Shipment Aggregate 2 | 3 | -------------------------------------------------------------------------------- /backstage/docs/system-architecture.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/docs/system-architecture.md -------------------------------------------------------------------------------- /backstage/mkdocs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/backstage/mkdocs.yml -------------------------------------------------------------------------------- /compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/compose.yml -------------------------------------------------------------------------------- /config/application-cluster.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/config/application-cluster.yaml -------------------------------------------------------------------------------- /config/application-docker-support-test.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/config/application-docker-support-test.yaml -------------------------------------------------------------------------------- /config/application-docker-support.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/config/application-docker-support.yaml -------------------------------------------------------------------------------- /config/application-idempotency.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/config/application-idempotency.yaml -------------------------------------------------------------------------------- /config/application-kafka-consumer.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/config/application-kafka-consumer.yaml -------------------------------------------------------------------------------- /config/application-kafka-producer.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/config/application-kafka-producer.yaml -------------------------------------------------------------------------------- /config/application-kafka.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/config/application-kafka.yaml -------------------------------------------------------------------------------- /config/application-observe.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/config/application-observe.yaml -------------------------------------------------------------------------------- /config/application-query-side.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/config/application-query-side.yaml -------------------------------------------------------------------------------- /config/application-redis.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/config/application-redis.yaml -------------------------------------------------------------------------------- /doc-image/event_storming_result.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/doc-image/event_storming_result.jpg -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/bootrun.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/gradle/bootrun.gradle -------------------------------------------------------------------------------- /gradle/jib.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/gradle/jib.gradle -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/gradlew.bat -------------------------------------------------------------------------------- /modules/build.gradle: -------------------------------------------------------------------------------- 1 | tasks.named("jar") { 2 | enabled = false 3 | } -------------------------------------------------------------------------------- /modules/client/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/build.gradle -------------------------------------------------------------------------------- /modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/OrderCommandClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/OrderCommandClient.java -------------------------------------------------------------------------------- /modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/OrderQueryClient.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/OrderQueryClient.java -------------------------------------------------------------------------------- /modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/config/OrderCommandClientConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/config/OrderCommandClientConfig.java -------------------------------------------------------------------------------- /modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/config/OrderQueryClientConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/config/OrderQueryClientConfig.java -------------------------------------------------------------------------------- /modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/decoder/CustomErrorDecoder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/decoder/CustomErrorDecoder.java -------------------------------------------------------------------------------- /modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/exception/BadRequestException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/exception/BadRequestException.java -------------------------------------------------------------------------------- /modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/exception/ResourceNotFoundException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/exception/ResourceNotFoundException.java -------------------------------------------------------------------------------- /modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/model/ResourceName.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/model/ResourceName.java -------------------------------------------------------------------------------- /modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/model/V1Order.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/model/V1Order.java -------------------------------------------------------------------------------- /modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/model/V1OrderStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/main/java/org/example/event/sourcing/order/poc/modules/client/order/model/V1OrderStatus.java -------------------------------------------------------------------------------- /modules/client/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports -------------------------------------------------------------------------------- /modules/client/src/test/java/org/example/event/sourcing/order/poc/modules/client/order/ObserveMockConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/test/java/org/example/event/sourcing/order/poc/modules/client/order/ObserveMockConfig.java -------------------------------------------------------------------------------- /modules/client/src/test/java/org/example/event/sourcing/order/poc/modules/client/order/OrderCommandClientTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/test/java/org/example/event/sourcing/order/poc/modules/client/order/OrderCommandClientTest.java -------------------------------------------------------------------------------- /modules/client/src/test/java/org/example/event/sourcing/order/poc/modules/client/order/OrderQueryClientTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/test/java/org/example/event/sourcing/order/poc/modules/client/order/OrderQueryClientTest.java -------------------------------------------------------------------------------- /modules/client/src/test/resources/application.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/test/resources/application.yaml -------------------------------------------------------------------------------- /modules/client/src/test/resources/logback-test.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/client/src/test/resources/logback-test.xml -------------------------------------------------------------------------------- /modules/common/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/common/build.gradle -------------------------------------------------------------------------------- /modules/common/src/main/java/org/example/event/sourcing/order/poc/modules/common/config/ApiExceptionHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/common/src/main/java/org/example/event/sourcing/order/poc/modules/common/config/ApiExceptionHandler.java -------------------------------------------------------------------------------- /modules/common/src/main/java/org/example/event/sourcing/order/poc/modules/common/model/Order.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/common/src/main/java/org/example/event/sourcing/order/poc/modules/common/model/Order.java -------------------------------------------------------------------------------- /modules/common/src/main/java/org/example/event/sourcing/order/poc/modules/common/model/Payment.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/common/src/main/java/org/example/event/sourcing/order/poc/modules/common/model/Payment.java -------------------------------------------------------------------------------- /modules/common/src/main/java/org/example/event/sourcing/order/poc/modules/common/model/Shipment.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/common/src/main/java/org/example/event/sourcing/order/poc/modules/common/model/Shipment.java -------------------------------------------------------------------------------- /modules/event/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/event/build.gradle -------------------------------------------------------------------------------- /modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/config/TopicConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/config/TopicConfig.java -------------------------------------------------------------------------------- /modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/model/OrderEvent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/model/OrderEvent.java -------------------------------------------------------------------------------- /modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/model/OrderEventName.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/model/OrderEventName.java -------------------------------------------------------------------------------- /modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/model/PaymentEvent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/model/PaymentEvent.java -------------------------------------------------------------------------------- /modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/model/PaymentEventName.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/model/PaymentEventName.java -------------------------------------------------------------------------------- /modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/model/ShipmentEvent.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/model/ShipmentEvent.java -------------------------------------------------------------------------------- /modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/model/ShipmentEventName.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/event/src/main/java/org/example/event/sourcing/order/poc/modules/event/model/ShipmentEventName.java -------------------------------------------------------------------------------- /modules/event/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/event/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports -------------------------------------------------------------------------------- /modules/idempotency/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/idempotency/build.gradle -------------------------------------------------------------------------------- /modules/idempotency/src/main/java/org/example/event/sourcing/order/poc/modules/idempotency/config/IdempotencyConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/idempotency/src/main/java/org/example/event/sourcing/order/poc/modules/idempotency/config/IdempotencyConfig.java -------------------------------------------------------------------------------- /modules/idempotency/src/main/java/org/example/event/sourcing/order/poc/modules/idempotency/filter/IdempotenceFilter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/idempotency/src/main/java/org/example/event/sourcing/order/poc/modules/idempotency/filter/IdempotenceFilter.java -------------------------------------------------------------------------------- /modules/idempotency/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/idempotency/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports -------------------------------------------------------------------------------- /modules/idempotency/src/test/java/org/example/event/sourcing/order/poc/modules/idempotency/filter/IdempotenceFilterTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/idempotency/src/test/java/org/example/event/sourcing/order/poc/modules/idempotency/filter/IdempotenceFilterTest.java -------------------------------------------------------------------------------- /modules/observation/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/observation/build.gradle -------------------------------------------------------------------------------- /modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/annotation/LogInfo.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/annotation/LogInfo.java -------------------------------------------------------------------------------- /modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/aop/AbstractLogAspect.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/aop/AbstractLogAspect.java -------------------------------------------------------------------------------- /modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/aop/AbstractObserveAroundMethodHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/aop/AbstractObserveAroundMethodHandler.java -------------------------------------------------------------------------------- /modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/aop/DefaultLogAspect.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/aop/DefaultLogAspect.java -------------------------------------------------------------------------------- /modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/aop/DefaultObserveAroundMethodHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/aop/DefaultObserveAroundMethodHandler.java -------------------------------------------------------------------------------- /modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/config/LogAspectConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/config/LogAspectConfig.java -------------------------------------------------------------------------------- /modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/config/ObserveConfiguration.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/observation/src/main/java/org/example/event/sourcing/order/poc/modules/observation/config/ObserveConfiguration.java -------------------------------------------------------------------------------- /modules/observation/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/observation/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports -------------------------------------------------------------------------------- /modules/observation/src/main/resources/espoc-logback.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/observation/src/main/resources/espoc-logback.xml -------------------------------------------------------------------------------- /modules/observation/src/main/resources/file-appender.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/modules/observation/src/main/resources/file-appender.xml -------------------------------------------------------------------------------- /order/build.gradle: -------------------------------------------------------------------------------- 1 | tasks.named("jar") { 2 | enabled = false 3 | } -------------------------------------------------------------------------------- /order/command-side/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/command-side/build.gradle -------------------------------------------------------------------------------- /order/command-side/src/main/java/org/example/event/sourcing/order/poc/command/order/CommandSideOrderApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/command-side/src/main/java/org/example/event/sourcing/order/poc/command/order/CommandSideOrderApplication.java -------------------------------------------------------------------------------- /order/command-side/src/main/java/org/example/event/sourcing/order/poc/command/order/controller/OrderController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/command-side/src/main/java/org/example/event/sourcing/order/poc/command/order/controller/OrderController.java -------------------------------------------------------------------------------- /order/command-side/src/main/java/org/example/event/sourcing/order/poc/command/order/producer/OrderEventProducer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/command-side/src/main/java/org/example/event/sourcing/order/poc/command/order/producer/OrderEventProducer.java -------------------------------------------------------------------------------- /order/command-side/src/main/java/org/example/event/sourcing/order/poc/command/order/service/OrderService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/command-side/src/main/java/org/example/event/sourcing/order/poc/command/order/service/OrderService.java -------------------------------------------------------------------------------- /order/command-side/src/main/resources/application.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/command-side/src/main/resources/application.yaml -------------------------------------------------------------------------------- /order/command-side/src/test/java/org/example/event/sourcing/order/poc/command/order/producer/OrderEventProducerTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/command-side/src/test/java/org/example/event/sourcing/order/poc/command/order/producer/OrderEventProducerTest.java -------------------------------------------------------------------------------- /order/command-side/src/test/java/org/example/event/sourcing/order/poc/command/order/service/OrderServiceTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/command-side/src/test/java/org/example/event/sourcing/order/poc/command/order/service/OrderServiceTest.java -------------------------------------------------------------------------------- /order/event-handler/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/event-handler/build.gradle -------------------------------------------------------------------------------- /order/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/order/EventHandlerOrderApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/order/EventHandlerOrderApplication.java -------------------------------------------------------------------------------- /order/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/order/consumer/OrderConsumer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/order/consumer/OrderConsumer.java -------------------------------------------------------------------------------- /order/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/order/domain/OrderEventHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/order/domain/OrderEventHandler.java -------------------------------------------------------------------------------- /order/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/order/domain/impl/OrderEventHandlerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/order/domain/impl/OrderEventHandlerImpl.java -------------------------------------------------------------------------------- /order/event-handler/src/main/resources/application.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/event-handler/src/main/resources/application.yaml -------------------------------------------------------------------------------- /order/query-side/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/build.gradle -------------------------------------------------------------------------------- /order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/QuerySideOrderApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/QuerySideOrderApplication.java -------------------------------------------------------------------------------- /order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/config/KafkaConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/config/KafkaConfig.java -------------------------------------------------------------------------------- /order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/consumer/OrderEventConsumer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/consumer/OrderEventConsumer.java -------------------------------------------------------------------------------- /order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/entity/OrderEventRecord.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/entity/OrderEventRecord.java -------------------------------------------------------------------------------- /order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/entity/OrderRecord.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/entity/OrderRecord.java -------------------------------------------------------------------------------- /order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/entity/OrderStatus.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/entity/OrderStatus.java -------------------------------------------------------------------------------- /order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/handler/OrderEventRecordHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/handler/OrderEventRecordHandler.java -------------------------------------------------------------------------------- /order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/handler/OrderRecordHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/handler/OrderRecordHandler.java -------------------------------------------------------------------------------- /order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/handler/impl/OrderEventRecordHandlerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/handler/impl/OrderEventRecordHandlerImpl.java -------------------------------------------------------------------------------- /order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/handler/impl/OrderRecordHandlerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/handler/impl/OrderRecordHandlerImpl.java -------------------------------------------------------------------------------- /order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/repo/OrderEventRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/repo/OrderEventRepository.java -------------------------------------------------------------------------------- /order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/repo/OrderRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/src/main/java/org/example/event/sourcing/order/poc/query/order/domain/repo/OrderRepository.java -------------------------------------------------------------------------------- /order/query-side/src/main/resources/application.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/order/query-side/src/main/resources/application.yaml -------------------------------------------------------------------------------- /payment/build.gradle: -------------------------------------------------------------------------------- 1 | tasks.named("jar") { 2 | enabled = false 3 | } -------------------------------------------------------------------------------- /payment/command-side/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/command-side/build.gradle -------------------------------------------------------------------------------- /payment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/payment/CommandSidePaymentApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/payment/CommandSidePaymentApplication.java -------------------------------------------------------------------------------- /payment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/payment/controller/PaymentController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/payment/controller/PaymentController.java -------------------------------------------------------------------------------- /payment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/payment/producer/PaymentEventProducer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/payment/producer/PaymentEventProducer.java -------------------------------------------------------------------------------- /payment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/payment/service/PaymentService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/payment/service/PaymentService.java -------------------------------------------------------------------------------- /payment/command-side/src/main/resources/application.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/command-side/src/main/resources/application.yaml -------------------------------------------------------------------------------- /payment/event-handler/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/event-handler/build.gradle -------------------------------------------------------------------------------- /payment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/payment/EventHandlerPaymentApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/payment/EventHandlerPaymentApplication.java -------------------------------------------------------------------------------- /payment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/payment/consumer/PaymentConsumer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/payment/consumer/PaymentConsumer.java -------------------------------------------------------------------------------- /payment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/payment/domain/PaymentEventHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/payment/domain/PaymentEventHandler.java -------------------------------------------------------------------------------- /payment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/payment/domain/impl/PaymentEventHandlerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/payment/domain/impl/PaymentEventHandlerImpl.java -------------------------------------------------------------------------------- /payment/event-handler/src/main/resources/application.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/event-handler/src/main/resources/application.yaml -------------------------------------------------------------------------------- /payment/query-side/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/query-side/build.gradle -------------------------------------------------------------------------------- /payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/QuerySidePaymentApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/QuerySidePaymentApplication.java -------------------------------------------------------------------------------- /payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/config/KafkaConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/config/KafkaConfig.java -------------------------------------------------------------------------------- /payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/consumer/PaymentConsumer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/consumer/PaymentConsumer.java -------------------------------------------------------------------------------- /payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/domain/entity/PaymentRecord.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/domain/entity/PaymentRecord.java -------------------------------------------------------------------------------- /payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/domain/handler/PaymentRecordHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/domain/handler/PaymentRecordHandler.java -------------------------------------------------------------------------------- /payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/domain/handler/impl/PaymentRecordHandlerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/domain/handler/impl/PaymentRecordHandlerImpl.java -------------------------------------------------------------------------------- /payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/domain/repo/PaymentRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/payment/domain/repo/PaymentRepository.java -------------------------------------------------------------------------------- /payment/query-side/src/main/resources/application.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/payment/query-side/src/main/resources/application.yaml -------------------------------------------------------------------------------- /postman/order.postman_collection.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/postman/order.postman_collection.json -------------------------------------------------------------------------------- /postman/payment.postman_collection.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/postman/payment.postman_collection.json -------------------------------------------------------------------------------- /postman/shipment.postman_collection.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/postman/shipment.postman_collection.json -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/settings.gradle -------------------------------------------------------------------------------- /shipment/build.gradle: -------------------------------------------------------------------------------- 1 | tasks.named("jar") { 2 | enabled = false 3 | } -------------------------------------------------------------------------------- /shipment/command-side/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/command-side/build.gradle -------------------------------------------------------------------------------- /shipment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/shipment/CommandSideShipmentApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/shipment/CommandSideShipmentApplication.java -------------------------------------------------------------------------------- /shipment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/shipment/controller/ShipmentController.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/shipment/controller/ShipmentController.java -------------------------------------------------------------------------------- /shipment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/shipment/producer/ShipmentEventProducer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/shipment/producer/ShipmentEventProducer.java -------------------------------------------------------------------------------- /shipment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/shipment/service/ShipmentService.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/command-side/src/main/java/org/example/event/sourcing/order/poc/command/shipment/service/ShipmentService.java -------------------------------------------------------------------------------- /shipment/command-side/src/main/resources/application.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/command-side/src/main/resources/application.yaml -------------------------------------------------------------------------------- /shipment/event-handler/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/event-handler/build.gradle -------------------------------------------------------------------------------- /shipment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/shipment/EventHandlerShipmentApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/shipment/EventHandlerShipmentApplication.java -------------------------------------------------------------------------------- /shipment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/shipment/consumer/ShipmentConsumer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/shipment/consumer/ShipmentConsumer.java -------------------------------------------------------------------------------- /shipment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/shipment/domain/ShipmentEventHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/shipment/domain/ShipmentEventHandler.java -------------------------------------------------------------------------------- /shipment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/shipment/domain/impl/ShipmentEventHandlerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/event-handler/src/main/java/org/example/event/sourcing/order/poc/handler/shipment/domain/impl/ShipmentEventHandlerImpl.java -------------------------------------------------------------------------------- /shipment/event-handler/src/main/resources/application.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/event-handler/src/main/resources/application.yaml -------------------------------------------------------------------------------- /shipment/query-side/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/query-side/build.gradle -------------------------------------------------------------------------------- /shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/QuerySideShipmentApplication.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/QuerySideShipmentApplication.java -------------------------------------------------------------------------------- /shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/config/KafkaConfig.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/config/KafkaConfig.java -------------------------------------------------------------------------------- /shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/consumer/ShipmentConsumer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/consumer/ShipmentConsumer.java -------------------------------------------------------------------------------- /shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/domain/entity/ShipmentRecord.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/domain/entity/ShipmentRecord.java -------------------------------------------------------------------------------- /shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/domain/handler/ShipmentRecordHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/domain/handler/ShipmentRecordHandler.java -------------------------------------------------------------------------------- /shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/domain/handler/impl/ShipmentRecordHandlerImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/domain/handler/impl/ShipmentRecordHandlerImpl.java -------------------------------------------------------------------------------- /shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/domain/repo/ShipmentRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/query-side/src/main/java/org/example/event/sourcing/order/poc/query/shipment/domain/repo/ShipmentRepository.java -------------------------------------------------------------------------------- /shipment/query-side/src/main/resources/application.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NoahHsu/event-sourcing-order-poc/HEAD/shipment/query-side/src/main/resources/application.yaml --------------------------------------------------------------------------------