├── .dockerignore ├── .gitignore ├── Dockerfile ├── Ecommerce.sln ├── README.md ├── docker-compose.yml └── src ├── Bootstrapper └── Ecommerce.Bootstrapper │ ├── Ecommerce.Bootstrapper.csproj │ ├── InternalControllerFeatureProvider.cs │ ├── Program.cs │ ├── Properties │ └── launchSettings.json │ ├── ServiceCollectionExtensions.cs │ ├── appsettings.Development.json │ └── appsettings.json ├── Modules ├── Inventory │ ├── Ecommerce.Inventory.Core │ │ ├── Aggregates │ │ │ ├── Inventory.cs │ │ │ └── ProductId.cs │ │ ├── Commands │ │ │ ├── CreateInventoryHandler.cs │ │ │ ├── ReleaseInventoryHandler.cs │ │ │ └── ReserveInventoryHandler.cs │ │ ├── Ecommerce.Inventory.Core.csproj │ │ ├── Repositories │ │ │ └── IInventoryRepository.cs │ │ ├── ServiceCollectionExtensions.cs │ │ └── ValueObjects │ │ │ └── ProductSku.cs │ ├── Ecommerce.Inventory.Infrastructure │ │ ├── Ecommerce.Inventory.Infrastructure.csproj │ │ ├── Persistence │ │ │ ├── InventoryDbContext.cs │ │ │ └── InventoryRepository.cs │ │ └── ServiceCollectionExtensions.cs │ ├── Ecommerce.Inventory.Shared │ │ ├── Ecommerce.Inventory.Shared.csproj │ │ └── Events │ │ │ ├── OutOfStock.cs │ │ │ ├── ReleaseStock.cs │ │ │ ├── ReserveStock.cs │ │ │ └── StockReserved.cs │ └── Ecommerce.Inventory │ │ ├── Consumers │ │ ├── ReleaseStockConsumer.cs │ │ ├── ReserveStockConsumer.cs │ │ └── ServiceCollectionExtensions.cs │ │ ├── Controllers │ │ └── InventoryController.cs │ │ ├── Ecommerce.Inventory.csproj │ │ └── InventoryModule.cs ├── Order │ ├── Ecommerce.Order.Core │ │ ├── Aggregates │ │ │ ├── Order.cs │ │ │ ├── OrderId.cs │ │ │ ├── OrderItem.cs │ │ │ └── OrderItemId.cs │ │ ├── Commands │ │ │ ├── CreateOrderHandler.cs │ │ │ ├── FailOrderHandler.cs │ │ │ └── PayOrderHandler.cs │ │ ├── Ecommerce.Order.Core.csproj │ │ ├── Events │ │ │ ├── OrderCreated.cs │ │ │ └── OrderCreatedHandler.cs │ │ ├── Queries │ │ │ └── GetOrderHandler.cs │ │ ├── Repositories │ │ │ └── IOrderRepository.cs │ │ ├── ServiceCollectionExtensions.cs │ │ └── ValueObjects │ │ │ ├── OrderStatuses.cs │ │ │ └── Price.cs │ ├── Ecommerce.Order.Infrastructure │ │ ├── Ecommerce.Order.Infrastructure.csproj │ │ ├── Persistence │ │ │ ├── OrderDbContext.cs │ │ │ └── OrderRepository.cs │ │ └── ServiceCollectionExtensions.cs │ ├── Ecommerce.Order.Shared │ │ ├── Ecommerce.Order.Shared.csproj │ │ └── Events │ │ │ ├── OrderFailed.cs │ │ │ ├── OrderPaid.cs │ │ │ └── OrderReceived.cs │ └── Ecommerce.Order │ │ ├── Consumers │ │ ├── OrderFailedConsumer.cs │ │ ├── OrderPaidConsumer.cs │ │ └── ServiceCollectionExtensions.cs │ │ ├── Controllers │ │ └── OrderController.cs │ │ ├── Ecommerce.Order.csproj │ │ └── OrderModule.cs ├── OrderSaga │ └── Ecommerce.OrderSaga │ │ ├── Ecommerce.OrderSaga.csproj │ │ ├── OrderSagaStateMachine.cs │ │ ├── OrderStateMachineInstance.cs │ │ └── ServiceCollectionExtensions.cs └── Payment │ ├── Ecommerce.Payment.Core │ ├── Aggregates │ │ ├── Payment.cs │ │ └── PaymentId.cs │ ├── Commands │ │ └── CreatePaymentHandler.cs │ ├── Ecommerce.Payment.Core.csproj │ ├── Repositories │ │ └── IPaymentRepository.cs │ ├── ServiceCollectionExtensions.cs │ ├── Services │ │ └── IPaymentGateway.cs │ └── ValueObjects │ │ ├── OrderId.cs │ │ ├── PaymentStatuses.cs │ │ └── Price.cs │ ├── Ecommerce.Payment.Infrastructure │ ├── Ecommerce.Payment.Infrastructure.csproj │ ├── Persistence │ │ ├── PaymentDbContext.cs │ │ └── PaymentRepository.cs │ ├── ServiceCollectionExtensions.cs │ └── Services │ │ └── PaymentGateway.cs │ ├── Ecommerce.Payment.Shared │ ├── Ecommerce.Payment.Shared.csproj │ ├── Events │ │ ├── MakePayment.cs │ │ ├── PaymentFailed.cs │ │ └── PaymentMade.cs │ └── Services │ │ └── IPaymentService.cs │ └── Ecommerce.Payment │ ├── Consumers │ ├── MakePaymentConsumer.cs │ └── ServiceCollectionExtensions.cs │ ├── Ecommerce.Payment.csproj │ └── PaymentModule.cs └── Shared ├── Ecommerce.Shared.Abstractions ├── Bus │ └── IBusService.cs ├── CQRS │ ├── ICommand.cs │ ├── ICommandDispatcher.cs │ ├── ICommandHandler.cs │ ├── IDispatcher.cs │ ├── IQuery.cs │ ├── IQueryDispatcher.cs │ └── IQueryHandler.cs ├── DDD │ ├── AggregateRoot.cs │ ├── DomainException.cs │ ├── Entity.cs │ ├── EntityTypedId.cs │ ├── IDomainEvent.cs │ ├── IDomainEventDispatcher.cs │ ├── IDomainEventHandler.cs │ └── ValueObject.cs └── Ecommerce.Shared.Abstractions.csproj └── Ecommerce.Shared ├── Bus ├── BusConfiguration.cs ├── BusService.cs └── ServiceCollectionExtensions.cs ├── CQRS ├── CommandDispatcher.cs ├── DefaultDispatcher.cs ├── QueryDispatcher.cs └── ServiceCollectionExtensions.cs ├── DDD ├── DomainEventDispatcher.cs └── ServiceCollectionExtensions.cs └── Ecommerce.Shared.csproj /.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/.dockerignore -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/.gitignore -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/Dockerfile -------------------------------------------------------------------------------- /Ecommerce.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/Ecommerce.sln -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/README.md -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /src/Bootstrapper/Ecommerce.Bootstrapper/Ecommerce.Bootstrapper.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Bootstrapper/Ecommerce.Bootstrapper/Ecommerce.Bootstrapper.csproj -------------------------------------------------------------------------------- /src/Bootstrapper/Ecommerce.Bootstrapper/InternalControllerFeatureProvider.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Bootstrapper/Ecommerce.Bootstrapper/InternalControllerFeatureProvider.cs -------------------------------------------------------------------------------- /src/Bootstrapper/Ecommerce.Bootstrapper/Program.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Bootstrapper/Ecommerce.Bootstrapper/Program.cs -------------------------------------------------------------------------------- /src/Bootstrapper/Ecommerce.Bootstrapper/Properties/launchSettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Bootstrapper/Ecommerce.Bootstrapper/Properties/launchSettings.json -------------------------------------------------------------------------------- /src/Bootstrapper/Ecommerce.Bootstrapper/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Bootstrapper/Ecommerce.Bootstrapper/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Bootstrapper/Ecommerce.Bootstrapper/appsettings.Development.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Bootstrapper/Ecommerce.Bootstrapper/appsettings.Development.json -------------------------------------------------------------------------------- /src/Bootstrapper/Ecommerce.Bootstrapper/appsettings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Bootstrapper/Ecommerce.Bootstrapper/appsettings.json -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Core/Aggregates/Inventory.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Core/Aggregates/Inventory.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Core/Aggregates/ProductId.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Core/Aggregates/ProductId.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Core/Commands/CreateInventoryHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Core/Commands/CreateInventoryHandler.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Core/Commands/ReleaseInventoryHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Core/Commands/ReleaseInventoryHandler.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Core/Commands/ReserveInventoryHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Core/Commands/ReserveInventoryHandler.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Core/Ecommerce.Inventory.Core.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Core/Ecommerce.Inventory.Core.csproj -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Core/Repositories/IInventoryRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Core/Repositories/IInventoryRepository.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Core/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Core/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Core/ValueObjects/ProductSku.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Core/ValueObjects/ProductSku.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Infrastructure/Ecommerce.Inventory.Infrastructure.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Infrastructure/Ecommerce.Inventory.Infrastructure.csproj -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Infrastructure/Persistence/InventoryDbContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Infrastructure/Persistence/InventoryDbContext.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Infrastructure/Persistence/InventoryRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Infrastructure/Persistence/InventoryRepository.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Infrastructure/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Infrastructure/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Shared/Ecommerce.Inventory.Shared.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Shared/Ecommerce.Inventory.Shared.csproj -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Shared/Events/OutOfStock.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Shared/Events/OutOfStock.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Shared/Events/ReleaseStock.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Shared/Events/ReleaseStock.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Shared/Events/ReserveStock.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Shared/Events/ReserveStock.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory.Shared/Events/StockReserved.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory.Shared/Events/StockReserved.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory/Consumers/ReleaseStockConsumer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory/Consumers/ReleaseStockConsumer.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory/Consumers/ReserveStockConsumer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory/Consumers/ReserveStockConsumer.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory/Consumers/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory/Consumers/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory/Controllers/InventoryController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory/Controllers/InventoryController.cs -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory/Ecommerce.Inventory.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory/Ecommerce.Inventory.csproj -------------------------------------------------------------------------------- /src/Modules/Inventory/Ecommerce.Inventory/InventoryModule.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Inventory/Ecommerce.Inventory/InventoryModule.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/Aggregates/Order.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/Aggregates/Order.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/Aggregates/OrderId.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/Aggregates/OrderId.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/Aggregates/OrderItem.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/Aggregates/OrderItem.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/Aggregates/OrderItemId.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/Aggregates/OrderItemId.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/Commands/CreateOrderHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/Commands/CreateOrderHandler.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/Commands/FailOrderHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/Commands/FailOrderHandler.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/Commands/PayOrderHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/Commands/PayOrderHandler.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/Ecommerce.Order.Core.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/Ecommerce.Order.Core.csproj -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/Events/OrderCreated.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/Events/OrderCreated.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/Events/OrderCreatedHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/Events/OrderCreatedHandler.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/Queries/GetOrderHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/Queries/GetOrderHandler.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/Repositories/IOrderRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/Repositories/IOrderRepository.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/ValueObjects/OrderStatuses.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/ValueObjects/OrderStatuses.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Core/ValueObjects/Price.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Core/ValueObjects/Price.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Infrastructure/Ecommerce.Order.Infrastructure.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Infrastructure/Ecommerce.Order.Infrastructure.csproj -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Infrastructure/Persistence/OrderDbContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Infrastructure/Persistence/OrderDbContext.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Infrastructure/Persistence/OrderRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Infrastructure/Persistence/OrderRepository.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Infrastructure/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Infrastructure/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Shared/Ecommerce.Order.Shared.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Shared/Ecommerce.Order.Shared.csproj -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Shared/Events/OrderFailed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Shared/Events/OrderFailed.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Shared/Events/OrderPaid.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Shared/Events/OrderPaid.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order.Shared/Events/OrderReceived.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order.Shared/Events/OrderReceived.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order/Consumers/OrderFailedConsumer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order/Consumers/OrderFailedConsumer.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order/Consumers/OrderPaidConsumer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order/Consumers/OrderPaidConsumer.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order/Consumers/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order/Consumers/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order/Controllers/OrderController.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order/Controllers/OrderController.cs -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order/Ecommerce.Order.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order/Ecommerce.Order.csproj -------------------------------------------------------------------------------- /src/Modules/Order/Ecommerce.Order/OrderModule.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Order/Ecommerce.Order/OrderModule.cs -------------------------------------------------------------------------------- /src/Modules/OrderSaga/Ecommerce.OrderSaga/Ecommerce.OrderSaga.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/OrderSaga/Ecommerce.OrderSaga/Ecommerce.OrderSaga.csproj -------------------------------------------------------------------------------- /src/Modules/OrderSaga/Ecommerce.OrderSaga/OrderSagaStateMachine.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/OrderSaga/Ecommerce.OrderSaga/OrderSagaStateMachine.cs -------------------------------------------------------------------------------- /src/Modules/OrderSaga/Ecommerce.OrderSaga/OrderStateMachineInstance.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/OrderSaga/Ecommerce.OrderSaga/OrderStateMachineInstance.cs -------------------------------------------------------------------------------- /src/Modules/OrderSaga/Ecommerce.OrderSaga/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/OrderSaga/Ecommerce.OrderSaga/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Core/Aggregates/Payment.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Core/Aggregates/Payment.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Core/Aggregates/PaymentId.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Core/Aggregates/PaymentId.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Core/Commands/CreatePaymentHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Core/Commands/CreatePaymentHandler.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Core/Ecommerce.Payment.Core.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Core/Ecommerce.Payment.Core.csproj -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Core/Repositories/IPaymentRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Core/Repositories/IPaymentRepository.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Core/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Core/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Core/Services/IPaymentGateway.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Core/Services/IPaymentGateway.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Core/ValueObjects/OrderId.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Core/ValueObjects/OrderId.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Core/ValueObjects/PaymentStatuses.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Core/ValueObjects/PaymentStatuses.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Core/ValueObjects/Price.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Core/ValueObjects/Price.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Infrastructure/Ecommerce.Payment.Infrastructure.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Infrastructure/Ecommerce.Payment.Infrastructure.csproj -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Infrastructure/Persistence/PaymentDbContext.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Infrastructure/Persistence/PaymentDbContext.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Infrastructure/Persistence/PaymentRepository.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Infrastructure/Persistence/PaymentRepository.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Infrastructure/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Infrastructure/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Infrastructure/Services/PaymentGateway.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Infrastructure/Services/PaymentGateway.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Shared/Ecommerce.Payment.Shared.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Shared/Ecommerce.Payment.Shared.csproj -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Shared/Events/MakePayment.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Shared/Events/MakePayment.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Shared/Events/PaymentFailed.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Shared/Events/PaymentFailed.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Shared/Events/PaymentMade.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Shared/Events/PaymentMade.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment.Shared/Services/IPaymentService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment.Shared/Services/IPaymentService.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment/Consumers/MakePaymentConsumer.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment/Consumers/MakePaymentConsumer.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment/Consumers/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment/Consumers/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment/Ecommerce.Payment.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment/Ecommerce.Payment.csproj -------------------------------------------------------------------------------- /src/Modules/Payment/Ecommerce.Payment/PaymentModule.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Modules/Payment/Ecommerce.Payment/PaymentModule.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/Bus/IBusService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/Bus/IBusService.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/CQRS/ICommand.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/CQRS/ICommand.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/CQRS/ICommandDispatcher.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/CQRS/ICommandDispatcher.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/CQRS/ICommandHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/CQRS/ICommandHandler.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/CQRS/IDispatcher.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/CQRS/IDispatcher.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/CQRS/IQuery.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/CQRS/IQuery.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/CQRS/IQueryDispatcher.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/CQRS/IQueryDispatcher.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/CQRS/IQueryHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/CQRS/IQueryHandler.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/DDD/AggregateRoot.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/DDD/AggregateRoot.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/DDD/DomainException.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/DDD/DomainException.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/DDD/Entity.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/DDD/Entity.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/DDD/EntityTypedId.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/DDD/EntityTypedId.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/DDD/IDomainEvent.cs: -------------------------------------------------------------------------------- 1 | namespace Ecommerce.Shared.Abstractions.DDD; 2 | 3 | public interface IDomainEvent 4 | { 5 | } -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/DDD/IDomainEventDispatcher.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/DDD/IDomainEventDispatcher.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/DDD/IDomainEventHandler.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/DDD/IDomainEventHandler.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/DDD/ValueObject.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/DDD/ValueObject.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared.Abstractions/Ecommerce.Shared.Abstractions.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared.Abstractions/Ecommerce.Shared.Abstractions.csproj -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared/Bus/BusConfiguration.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared/Bus/BusConfiguration.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared/Bus/BusService.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared/Bus/BusService.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared/Bus/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared/Bus/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared/CQRS/CommandDispatcher.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared/CQRS/CommandDispatcher.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared/CQRS/DefaultDispatcher.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared/CQRS/DefaultDispatcher.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared/CQRS/QueryDispatcher.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared/CQRS/QueryDispatcher.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared/CQRS/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared/CQRS/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared/DDD/DomainEventDispatcher.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared/DDD/DomainEventDispatcher.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared/DDD/ServiceCollectionExtensions.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared/DDD/ServiceCollectionExtensions.cs -------------------------------------------------------------------------------- /src/Shared/Ecommerce.Shared/Ecommerce.Shared.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ahmetkucukoglu/modular-monolith-async/HEAD/src/Shared/Ecommerce.Shared/Ecommerce.Shared.csproj --------------------------------------------------------------------------------