├── .dockerignore ├── .gitignore ├── README.md ├── TrueAtomicMicroservices.sln ├── docker-compose.yml ├── docs ├── architecture.drawio └── architecture.png ├── http ├── debezium.http ├── http-client.env.json └── order.http ├── setup ├── debezium │ └── connectors │ │ └── order_service_outbox_connector_config.json └── mssql │ ├── Dockerfile │ └── build.sql └── src └── Services ├── Notifier └── Notifier │ ├── Events │ ├── Handler │ │ └── SendOrderNotification.cs │ └── OrderCreatedEvent.cs │ ├── GlobalUsings.cs │ ├── Infrastructure │ ├── Kafka │ │ ├── BackGroundKafkaConsumer.cs │ │ ├── IKafkaHandler.cs │ │ ├── KafkaConsumerConfig.cs │ │ ├── KafkaDeserializer.cs │ │ └── RegisterServiceExtensions.cs │ └── Smtp │ │ └── SmtpConfig.cs │ ├── Notifier.csproj │ ├── Program.cs │ ├── Properties │ └── launchSettings.json │ ├── appsettings.Development.json │ └── appsettings.json └── Order └── Api ├── Domain ├── Outbox.cs └── PurchaseOrder.cs ├── Events └── OrderCreatedEvent.cs ├── GlobalUsings.cs ├── Infrastructure └── Data │ ├── Migrations │ ├── 20220310110612_InitialCreate.Designer.cs │ ├── 20220310110612_InitialCreate.cs │ └── OrderDbContextModelSnapshot.cs │ └── OrderDbContext.cs ├── Order.Api.csproj ├── Program.cs ├── Properties └── launchSettings.json ├── SharedKernel ├── BaseEntity.cs └── OutboxEvent.cs ├── appsettings.Development.json └── appsettings.json /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/.dockerignore -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/.gitignore -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/README.md -------------------------------------------------------------------------------- /TrueAtomicMicroservices.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/TrueAtomicMicroservices.sln -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /docs/architecture.drawio: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/docs/architecture.drawio -------------------------------------------------------------------------------- /docs/architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/docs/architecture.png -------------------------------------------------------------------------------- /http/debezium.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/http/debezium.http -------------------------------------------------------------------------------- /http/http-client.env.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/http/http-client.env.json -------------------------------------------------------------------------------- /http/order.http: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/http/order.http -------------------------------------------------------------------------------- /setup/debezium/connectors/order_service_outbox_connector_config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/setup/debezium/connectors/order_service_outbox_connector_config.json -------------------------------------------------------------------------------- /setup/mssql/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/setup/mssql/Dockerfile -------------------------------------------------------------------------------- /setup/mssql/build.sql: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/setup/mssql/build.sql -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/Events/Handler/SendOrderNotification.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/Events/Handler/SendOrderNotification.cs -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/Events/OrderCreatedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/Events/OrderCreatedEvent.cs -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/GlobalUsings.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/GlobalUsings.cs -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/Infrastructure/Kafka/BackGroundKafkaConsumer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/Infrastructure/Kafka/BackGroundKafkaConsumer.cs -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/Infrastructure/Kafka/IKafkaHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/Infrastructure/Kafka/IKafkaHandler.cs -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/Infrastructure/Kafka/KafkaConsumerConfig.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/Infrastructure/Kafka/KafkaConsumerConfig.cs -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/Infrastructure/Kafka/KafkaDeserializer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/Infrastructure/Kafka/KafkaDeserializer.cs -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/Infrastructure/Kafka/RegisterServiceExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/Infrastructure/Kafka/RegisterServiceExtensions.cs -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/Infrastructure/Smtp/SmtpConfig.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/Infrastructure/Smtp/SmtpConfig.cs -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/Notifier.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/Notifier.csproj -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/Program.cs -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/Properties/launchSettings.json -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/appsettings.Development.json -------------------------------------------------------------------------------- /src/Services/Notifier/Notifier/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Notifier/Notifier/appsettings.json -------------------------------------------------------------------------------- /src/Services/Order/Api/Domain/Outbox.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/Domain/Outbox.cs -------------------------------------------------------------------------------- /src/Services/Order/Api/Domain/PurchaseOrder.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/Domain/PurchaseOrder.cs -------------------------------------------------------------------------------- /src/Services/Order/Api/Events/OrderCreatedEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/Events/OrderCreatedEvent.cs -------------------------------------------------------------------------------- /src/Services/Order/Api/GlobalUsings.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/GlobalUsings.cs -------------------------------------------------------------------------------- /src/Services/Order/Api/Infrastructure/Data/Migrations/20220310110612_InitialCreate.Designer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/Infrastructure/Data/Migrations/20220310110612_InitialCreate.Designer.cs -------------------------------------------------------------------------------- /src/Services/Order/Api/Infrastructure/Data/Migrations/20220310110612_InitialCreate.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/Infrastructure/Data/Migrations/20220310110612_InitialCreate.cs -------------------------------------------------------------------------------- /src/Services/Order/Api/Infrastructure/Data/Migrations/OrderDbContextModelSnapshot.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/Infrastructure/Data/Migrations/OrderDbContextModelSnapshot.cs -------------------------------------------------------------------------------- /src/Services/Order/Api/Infrastructure/Data/OrderDbContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/Infrastructure/Data/OrderDbContext.cs -------------------------------------------------------------------------------- /src/Services/Order/Api/Order.Api.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/Order.Api.csproj -------------------------------------------------------------------------------- /src/Services/Order/Api/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/Program.cs -------------------------------------------------------------------------------- /src/Services/Order/Api/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/Properties/launchSettings.json -------------------------------------------------------------------------------- /src/Services/Order/Api/SharedKernel/BaseEntity.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/SharedKernel/BaseEntity.cs -------------------------------------------------------------------------------- /src/Services/Order/Api/SharedKernel/OutboxEvent.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/SharedKernel/OutboxEvent.cs -------------------------------------------------------------------------------- /src/Services/Order/Api/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/appsettings.Development.json -------------------------------------------------------------------------------- /src/Services/Order/Api/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/seralaci/dotnet-microservices-data-exchange-with-outbox-pattern-debezium/HEAD/src/Services/Order/Api/appsettings.json --------------------------------------------------------------------------------