├── .circleci └── config.yml ├── .gitignore ├── account-service ├── pom.xml └── src │ ├── main │ ├── kotlin │ │ └── pl │ │ │ └── piomin │ │ │ └── samples │ │ │ └── account │ │ │ ├── AccountServiceApp.kt │ │ │ ├── client │ │ │ ├── DistributedTransaction.kt │ │ │ ├── DistributedTransactionParticipant.kt │ │ │ └── DistributedTransactionStatus.kt │ │ │ ├── controller │ │ │ └── AccountController.kt │ │ │ ├── domain │ │ │ └── Account.kt │ │ │ ├── exception │ │ │ └── AccountProcessingException.kt │ │ │ ├── listener │ │ │ ├── AccountTransactionEvent.kt │ │ │ ├── AccountTransactionListener.kt │ │ │ └── DistributedTransactionEventListener.kt │ │ │ ├── repository │ │ │ └── AccountRepository.kt │ │ │ └── service │ │ │ ├── AccountService.kt │ │ │ └── EventBus.kt │ └── resources │ │ └── application.yml │ └── test │ └── kotlin │ └── pl │ └── piomin │ └── samples │ └── account │ └── AccountControllerTests.kt ├── discovery-server ├── pom.xml └── src │ └── main │ ├── kotlin │ └── pl │ │ └── piomin │ │ └── samples │ │ └── discovery │ │ └── DiscoveryServerApp.kt │ └── resources │ └── application.yml ├── docker-compose.yml ├── order-service ├── pom.xml └── src │ └── main │ ├── kotlin │ └── pl │ │ └── piomin │ │ └── samples │ │ └── order │ │ ├── OrderServiceApp.kt │ │ ├── client │ │ ├── Account.kt │ │ ├── DistributedTransaction.kt │ │ ├── DistributedTransactionParticipant.kt │ │ ├── DistributedTransactionStatus.kt │ │ └── Product.kt │ │ ├── controller │ │ └── OrderController.kt │ │ ├── domain │ │ └── Order.kt │ │ ├── exception │ │ └── OrderProcessingException.kt │ │ ├── listener │ │ └── OrderTransactionEvent.kt │ │ ├── repository │ │ └── OrderRepository.kt │ │ └── service │ │ └── EventBus.kt │ └── resources │ └── application.yml ├── pom.xml ├── product-service ├── pom.xml └── src │ ├── main │ ├── kotlin │ │ └── pl │ │ │ └── piomin │ │ │ └── samples │ │ │ └── product │ │ │ ├── ProductServiceApp.kt │ │ │ ├── client │ │ │ ├── DistributedTransaction.kt │ │ │ ├── DistributedTransactionParticipant.kt │ │ │ └── DistributedTransactionStatus.kt │ │ │ ├── controller │ │ │ └── ProductController.kt │ │ │ ├── domain │ │ │ └── Product.kt │ │ │ ├── exception │ │ │ └── ProductProcessingException.kt │ │ │ ├── listener │ │ │ ├── DistributedTransactionEventListener.kt │ │ │ ├── ProductTransactionEvent.kt │ │ │ └── ProductTransactionListener.kt │ │ │ ├── repository │ │ │ └── ProductRepository.kt │ │ │ └── service │ │ │ ├── EventBus.kt │ │ │ └── ProductService.kt │ └── resources │ │ └── application.yml │ └── test │ └── kotlin │ └── pl │ └── piomin │ └── samples │ └── product │ └── ProductControllerTests.kt ├── readme.md ├── renovate.json └── transaction-server ├── pom.xml └── src ├── main ├── kotlin │ └── pl │ │ └── piomin │ │ └── samples │ │ └── transaction │ │ ├── TransactionServerApp.kt │ │ ├── controller │ │ └── TransactionController.kt │ │ ├── domain │ │ ├── DistributedTransaction.kt │ │ ├── DistributedTransactionParticipant.kt │ │ └── DistributedTransactionStatus.kt │ │ └── repository │ │ └── TransactionRepository.kt └── resources │ └── application.yml └── test └── kotlin └── pl └── piomin └── samples └── transaction ├── TransactionBrokerConfiguration.kt └── TransactionControllerTests.kt /.circleci/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/.circleci/config.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Project exclude paths 2 | /transaction-server/target/ -------------------------------------------------------------------------------- /account-service/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/pom.xml -------------------------------------------------------------------------------- /account-service/src/main/kotlin/pl/piomin/samples/account/AccountServiceApp.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/kotlin/pl/piomin/samples/account/AccountServiceApp.kt -------------------------------------------------------------------------------- /account-service/src/main/kotlin/pl/piomin/samples/account/client/DistributedTransaction.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/kotlin/pl/piomin/samples/account/client/DistributedTransaction.kt -------------------------------------------------------------------------------- /account-service/src/main/kotlin/pl/piomin/samples/account/client/DistributedTransactionParticipant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/kotlin/pl/piomin/samples/account/client/DistributedTransactionParticipant.kt -------------------------------------------------------------------------------- /account-service/src/main/kotlin/pl/piomin/samples/account/client/DistributedTransactionStatus.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/kotlin/pl/piomin/samples/account/client/DistributedTransactionStatus.kt -------------------------------------------------------------------------------- /account-service/src/main/kotlin/pl/piomin/samples/account/controller/AccountController.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/kotlin/pl/piomin/samples/account/controller/AccountController.kt -------------------------------------------------------------------------------- /account-service/src/main/kotlin/pl/piomin/samples/account/domain/Account.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/kotlin/pl/piomin/samples/account/domain/Account.kt -------------------------------------------------------------------------------- /account-service/src/main/kotlin/pl/piomin/samples/account/exception/AccountProcessingException.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/kotlin/pl/piomin/samples/account/exception/AccountProcessingException.kt -------------------------------------------------------------------------------- /account-service/src/main/kotlin/pl/piomin/samples/account/listener/AccountTransactionEvent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/kotlin/pl/piomin/samples/account/listener/AccountTransactionEvent.kt -------------------------------------------------------------------------------- /account-service/src/main/kotlin/pl/piomin/samples/account/listener/AccountTransactionListener.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/kotlin/pl/piomin/samples/account/listener/AccountTransactionListener.kt -------------------------------------------------------------------------------- /account-service/src/main/kotlin/pl/piomin/samples/account/listener/DistributedTransactionEventListener.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/kotlin/pl/piomin/samples/account/listener/DistributedTransactionEventListener.kt -------------------------------------------------------------------------------- /account-service/src/main/kotlin/pl/piomin/samples/account/repository/AccountRepository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/kotlin/pl/piomin/samples/account/repository/AccountRepository.kt -------------------------------------------------------------------------------- /account-service/src/main/kotlin/pl/piomin/samples/account/service/AccountService.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/kotlin/pl/piomin/samples/account/service/AccountService.kt -------------------------------------------------------------------------------- /account-service/src/main/kotlin/pl/piomin/samples/account/service/EventBus.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/kotlin/pl/piomin/samples/account/service/EventBus.kt -------------------------------------------------------------------------------- /account-service/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/main/resources/application.yml -------------------------------------------------------------------------------- /account-service/src/test/kotlin/pl/piomin/samples/account/AccountControllerTests.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/account-service/src/test/kotlin/pl/piomin/samples/account/AccountControllerTests.kt -------------------------------------------------------------------------------- /discovery-server/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/discovery-server/pom.xml -------------------------------------------------------------------------------- /discovery-server/src/main/kotlin/pl/piomin/samples/discovery/DiscoveryServerApp.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/discovery-server/src/main/kotlin/pl/piomin/samples/discovery/DiscoveryServerApp.kt -------------------------------------------------------------------------------- /discovery-server/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/discovery-server/src/main/resources/application.yml -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /order-service/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/pom.xml -------------------------------------------------------------------------------- /order-service/src/main/kotlin/pl/piomin/samples/order/OrderServiceApp.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/src/main/kotlin/pl/piomin/samples/order/OrderServiceApp.kt -------------------------------------------------------------------------------- /order-service/src/main/kotlin/pl/piomin/samples/order/client/Account.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/src/main/kotlin/pl/piomin/samples/order/client/Account.kt -------------------------------------------------------------------------------- /order-service/src/main/kotlin/pl/piomin/samples/order/client/DistributedTransaction.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/src/main/kotlin/pl/piomin/samples/order/client/DistributedTransaction.kt -------------------------------------------------------------------------------- /order-service/src/main/kotlin/pl/piomin/samples/order/client/DistributedTransactionParticipant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/src/main/kotlin/pl/piomin/samples/order/client/DistributedTransactionParticipant.kt -------------------------------------------------------------------------------- /order-service/src/main/kotlin/pl/piomin/samples/order/client/DistributedTransactionStatus.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/src/main/kotlin/pl/piomin/samples/order/client/DistributedTransactionStatus.kt -------------------------------------------------------------------------------- /order-service/src/main/kotlin/pl/piomin/samples/order/client/Product.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/src/main/kotlin/pl/piomin/samples/order/client/Product.kt -------------------------------------------------------------------------------- /order-service/src/main/kotlin/pl/piomin/samples/order/controller/OrderController.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/src/main/kotlin/pl/piomin/samples/order/controller/OrderController.kt -------------------------------------------------------------------------------- /order-service/src/main/kotlin/pl/piomin/samples/order/domain/Order.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/src/main/kotlin/pl/piomin/samples/order/domain/Order.kt -------------------------------------------------------------------------------- /order-service/src/main/kotlin/pl/piomin/samples/order/exception/OrderProcessingException.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/src/main/kotlin/pl/piomin/samples/order/exception/OrderProcessingException.kt -------------------------------------------------------------------------------- /order-service/src/main/kotlin/pl/piomin/samples/order/listener/OrderTransactionEvent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/src/main/kotlin/pl/piomin/samples/order/listener/OrderTransactionEvent.kt -------------------------------------------------------------------------------- /order-service/src/main/kotlin/pl/piomin/samples/order/repository/OrderRepository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/src/main/kotlin/pl/piomin/samples/order/repository/OrderRepository.kt -------------------------------------------------------------------------------- /order-service/src/main/kotlin/pl/piomin/samples/order/service/EventBus.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/src/main/kotlin/pl/piomin/samples/order/service/EventBus.kt -------------------------------------------------------------------------------- /order-service/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/order-service/src/main/resources/application.yml -------------------------------------------------------------------------------- /pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/pom.xml -------------------------------------------------------------------------------- /product-service/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/pom.xml -------------------------------------------------------------------------------- /product-service/src/main/kotlin/pl/piomin/samples/product/ProductServiceApp.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/kotlin/pl/piomin/samples/product/ProductServiceApp.kt -------------------------------------------------------------------------------- /product-service/src/main/kotlin/pl/piomin/samples/product/client/DistributedTransaction.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/kotlin/pl/piomin/samples/product/client/DistributedTransaction.kt -------------------------------------------------------------------------------- /product-service/src/main/kotlin/pl/piomin/samples/product/client/DistributedTransactionParticipant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/kotlin/pl/piomin/samples/product/client/DistributedTransactionParticipant.kt -------------------------------------------------------------------------------- /product-service/src/main/kotlin/pl/piomin/samples/product/client/DistributedTransactionStatus.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/kotlin/pl/piomin/samples/product/client/DistributedTransactionStatus.kt -------------------------------------------------------------------------------- /product-service/src/main/kotlin/pl/piomin/samples/product/controller/ProductController.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/kotlin/pl/piomin/samples/product/controller/ProductController.kt -------------------------------------------------------------------------------- /product-service/src/main/kotlin/pl/piomin/samples/product/domain/Product.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/kotlin/pl/piomin/samples/product/domain/Product.kt -------------------------------------------------------------------------------- /product-service/src/main/kotlin/pl/piomin/samples/product/exception/ProductProcessingException.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/kotlin/pl/piomin/samples/product/exception/ProductProcessingException.kt -------------------------------------------------------------------------------- /product-service/src/main/kotlin/pl/piomin/samples/product/listener/DistributedTransactionEventListener.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/kotlin/pl/piomin/samples/product/listener/DistributedTransactionEventListener.kt -------------------------------------------------------------------------------- /product-service/src/main/kotlin/pl/piomin/samples/product/listener/ProductTransactionEvent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/kotlin/pl/piomin/samples/product/listener/ProductTransactionEvent.kt -------------------------------------------------------------------------------- /product-service/src/main/kotlin/pl/piomin/samples/product/listener/ProductTransactionListener.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/kotlin/pl/piomin/samples/product/listener/ProductTransactionListener.kt -------------------------------------------------------------------------------- /product-service/src/main/kotlin/pl/piomin/samples/product/repository/ProductRepository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/kotlin/pl/piomin/samples/product/repository/ProductRepository.kt -------------------------------------------------------------------------------- /product-service/src/main/kotlin/pl/piomin/samples/product/service/EventBus.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/kotlin/pl/piomin/samples/product/service/EventBus.kt -------------------------------------------------------------------------------- /product-service/src/main/kotlin/pl/piomin/samples/product/service/ProductService.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/kotlin/pl/piomin/samples/product/service/ProductService.kt -------------------------------------------------------------------------------- /product-service/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/main/resources/application.yml -------------------------------------------------------------------------------- /product-service/src/test/kotlin/pl/piomin/samples/product/ProductControllerTests.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/product-service/src/test/kotlin/pl/piomin/samples/product/ProductControllerTests.kt -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/readme.md -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/renovate.json -------------------------------------------------------------------------------- /transaction-server/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/transaction-server/pom.xml -------------------------------------------------------------------------------- /transaction-server/src/main/kotlin/pl/piomin/samples/transaction/TransactionServerApp.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/transaction-server/src/main/kotlin/pl/piomin/samples/transaction/TransactionServerApp.kt -------------------------------------------------------------------------------- /transaction-server/src/main/kotlin/pl/piomin/samples/transaction/controller/TransactionController.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/transaction-server/src/main/kotlin/pl/piomin/samples/transaction/controller/TransactionController.kt -------------------------------------------------------------------------------- /transaction-server/src/main/kotlin/pl/piomin/samples/transaction/domain/DistributedTransaction.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/transaction-server/src/main/kotlin/pl/piomin/samples/transaction/domain/DistributedTransaction.kt -------------------------------------------------------------------------------- /transaction-server/src/main/kotlin/pl/piomin/samples/transaction/domain/DistributedTransactionParticipant.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/transaction-server/src/main/kotlin/pl/piomin/samples/transaction/domain/DistributedTransactionParticipant.kt -------------------------------------------------------------------------------- /transaction-server/src/main/kotlin/pl/piomin/samples/transaction/domain/DistributedTransactionStatus.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/transaction-server/src/main/kotlin/pl/piomin/samples/transaction/domain/DistributedTransactionStatus.kt -------------------------------------------------------------------------------- /transaction-server/src/main/kotlin/pl/piomin/samples/transaction/repository/TransactionRepository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/transaction-server/src/main/kotlin/pl/piomin/samples/transaction/repository/TransactionRepository.kt -------------------------------------------------------------------------------- /transaction-server/src/main/resources/application.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/transaction-server/src/main/resources/application.yml -------------------------------------------------------------------------------- /transaction-server/src/test/kotlin/pl/piomin/samples/transaction/TransactionBrokerConfiguration.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/transaction-server/src/test/kotlin/pl/piomin/samples/transaction/TransactionBrokerConfiguration.kt -------------------------------------------------------------------------------- /transaction-server/src/test/kotlin/pl/piomin/samples/transaction/TransactionControllerTests.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/piomin/sample-spring-microservices-transactions/HEAD/transaction-server/src/test/kotlin/pl/piomin/samples/transaction/TransactionControllerTests.kt --------------------------------------------------------------------------------