├── .gitattributes ├── .gitignore ├── Docker ├── Dockerfile.mongo ├── Dockerfile.rabbitmq ├── Dockerfile.redis └── docker-compose.yaml ├── LICENSE ├── OrderService ├── __init__.py ├── db_url_creator.py ├── queue_test_receiver.py ├── queue_test_sender.py ├── redis_order_viewer.py ├── redis_url_cleaner.py ├── response_test_sender.py ├── run.py └── src │ ├── __init__.py │ ├── business │ ├── __init__.py │ ├── documentation.py │ ├── models.py │ ├── request_handler.py │ └── response_handler.py │ ├── core │ ├── .env │ ├── security.py │ └── setup.py │ ├── repository │ ├── __init__.py │ ├── db.py │ ├── documentation.py │ ├── interface.py │ ├── models.py │ ├── mongo_repository.py │ ├── order_db_adapter.py │ └── unit_of_work.py │ ├── tools │ ├── __init__.py │ ├── custom_logging.py │ ├── rabbit_client.py │ └── url_cache.py │ └── web │ ├── __init__.py │ ├── api │ ├── __init__.py │ ├── api.py │ ├── documentation.py │ ├── health_route.py │ ├── models.py │ └── order_api_adapter.py │ ├── health_manager.py │ ├── main.py │ └── order_event_adapter.py ├── PaymentService ├── __init__.py ├── run.py └── src │ ├── __init__.py │ ├── broker │ ├── interface.py │ └── unit_of_work.py │ ├── business │ ├── __init__.py │ ├── models.py │ └── payment_handler.py │ ├── core │ ├── .env │ ├── __init__.py │ ├── security.py │ └── setup.py │ ├── repository │ ├── __init__.py │ ├── db.py │ ├── documentation.py │ ├── interface.py │ ├── models.py │ ├── mongo_repository.py │ ├── payment_db_adapter.py │ └── unit_of_work.py │ ├── tools │ ├── __init__.py │ ├── custom_logging.py │ ├── rabbit_client.py │ └── url_cache.py │ └── web │ ├── __init__.py │ ├── api │ ├── __init__.py │ ├── api.py │ ├── documentation.py │ ├── health_route.py │ ├── models.py │ └── payment_api_adapter.py │ ├── health_manager.py │ └── main.py ├── README.md ├── __init__.py ├── customers.yaml ├── deliveries.yaml ├── design_docs ├── PaymentService_sequence_diagram.png ├── PaymentService_sequence_diagram.puml ├── order_cancel_sequence_diagram.png ├── order_cancel_sequence_diagram.puml ├── order_container_diagram.png ├── order_container_diagram.puml ├── order_full_sequence_diagram.png ├── order_full_sequence_diagram.puml ├── order_hexagon_pattern.png ├── order_hexagon_pattern.puml ├── order_sequence_diagram.png ├── order_sequence_diagram.puml ├── payment_hexagon_pattern.png └── payment_hexagon_pattern.puml ├── kitchen.yaml ├── pydoctor.ini └── requirements.txt /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/.gitignore -------------------------------------------------------------------------------- /Docker/Dockerfile.mongo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/Docker/Dockerfile.mongo -------------------------------------------------------------------------------- /Docker/Dockerfile.rabbitmq: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/Docker/Dockerfile.rabbitmq -------------------------------------------------------------------------------- /Docker/Dockerfile.redis: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/Docker/Dockerfile.redis -------------------------------------------------------------------------------- /Docker/docker-compose.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/Docker/docker-compose.yaml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/LICENSE -------------------------------------------------------------------------------- /OrderService/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /OrderService/db_url_creator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/db_url_creator.py -------------------------------------------------------------------------------- /OrderService/queue_test_receiver.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/queue_test_receiver.py -------------------------------------------------------------------------------- /OrderService/queue_test_sender.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/queue_test_sender.py -------------------------------------------------------------------------------- /OrderService/redis_order_viewer.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/redis_order_viewer.py -------------------------------------------------------------------------------- /OrderService/redis_url_cleaner.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/redis_url_cleaner.py -------------------------------------------------------------------------------- /OrderService/response_test_sender.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/response_test_sender.py -------------------------------------------------------------------------------- /OrderService/run.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/run.py -------------------------------------------------------------------------------- /OrderService/src/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /OrderService/src/business/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /OrderService/src/business/documentation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/business/documentation.py -------------------------------------------------------------------------------- /OrderService/src/business/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/business/models.py -------------------------------------------------------------------------------- /OrderService/src/business/request_handler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/business/request_handler.py -------------------------------------------------------------------------------- /OrderService/src/business/response_handler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/business/response_handler.py -------------------------------------------------------------------------------- /OrderService/src/core/.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/core/.env -------------------------------------------------------------------------------- /OrderService/src/core/security.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/core/security.py -------------------------------------------------------------------------------- /OrderService/src/core/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/core/setup.py -------------------------------------------------------------------------------- /OrderService/src/repository/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /OrderService/src/repository/db.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/repository/db.py -------------------------------------------------------------------------------- /OrderService/src/repository/documentation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/repository/documentation.py -------------------------------------------------------------------------------- /OrderService/src/repository/interface.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/repository/interface.py -------------------------------------------------------------------------------- /OrderService/src/repository/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/repository/models.py -------------------------------------------------------------------------------- /OrderService/src/repository/mongo_repository.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/repository/mongo_repository.py -------------------------------------------------------------------------------- /OrderService/src/repository/order_db_adapter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/repository/order_db_adapter.py -------------------------------------------------------------------------------- /OrderService/src/repository/unit_of_work.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/repository/unit_of_work.py -------------------------------------------------------------------------------- /OrderService/src/tools/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /OrderService/src/tools/custom_logging.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/tools/custom_logging.py -------------------------------------------------------------------------------- /OrderService/src/tools/rabbit_client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/tools/rabbit_client.py -------------------------------------------------------------------------------- /OrderService/src/tools/url_cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/tools/url_cache.py -------------------------------------------------------------------------------- /OrderService/src/web/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /OrderService/src/web/api/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /OrderService/src/web/api/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/web/api/api.py -------------------------------------------------------------------------------- /OrderService/src/web/api/documentation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/web/api/documentation.py -------------------------------------------------------------------------------- /OrderService/src/web/api/health_route.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/web/api/health_route.py -------------------------------------------------------------------------------- /OrderService/src/web/api/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/web/api/models.py -------------------------------------------------------------------------------- /OrderService/src/web/api/order_api_adapter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/web/api/order_api_adapter.py -------------------------------------------------------------------------------- /OrderService/src/web/health_manager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/web/health_manager.py -------------------------------------------------------------------------------- /OrderService/src/web/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/web/main.py -------------------------------------------------------------------------------- /OrderService/src/web/order_event_adapter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/OrderService/src/web/order_event_adapter.py -------------------------------------------------------------------------------- /PaymentService/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PaymentService/run.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/run.py -------------------------------------------------------------------------------- /PaymentService/src/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PaymentService/src/broker/interface.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/broker/interface.py -------------------------------------------------------------------------------- /PaymentService/src/broker/unit_of_work.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/broker/unit_of_work.py -------------------------------------------------------------------------------- /PaymentService/src/business/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PaymentService/src/business/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/business/models.py -------------------------------------------------------------------------------- /PaymentService/src/business/payment_handler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/business/payment_handler.py -------------------------------------------------------------------------------- /PaymentService/src/core/.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/core/.env -------------------------------------------------------------------------------- /PaymentService/src/core/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PaymentService/src/core/security.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/core/security.py -------------------------------------------------------------------------------- /PaymentService/src/core/setup.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/core/setup.py -------------------------------------------------------------------------------- /PaymentService/src/repository/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PaymentService/src/repository/db.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/repository/db.py -------------------------------------------------------------------------------- /PaymentService/src/repository/documentation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/repository/documentation.py -------------------------------------------------------------------------------- /PaymentService/src/repository/interface.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/repository/interface.py -------------------------------------------------------------------------------- /PaymentService/src/repository/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/repository/models.py -------------------------------------------------------------------------------- /PaymentService/src/repository/mongo_repository.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/repository/mongo_repository.py -------------------------------------------------------------------------------- /PaymentService/src/repository/payment_db_adapter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/repository/payment_db_adapter.py -------------------------------------------------------------------------------- /PaymentService/src/repository/unit_of_work.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/repository/unit_of_work.py -------------------------------------------------------------------------------- /PaymentService/src/tools/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PaymentService/src/tools/custom_logging.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/tools/custom_logging.py -------------------------------------------------------------------------------- /PaymentService/src/tools/rabbit_client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/tools/rabbit_client.py -------------------------------------------------------------------------------- /PaymentService/src/tools/url_cache.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/tools/url_cache.py -------------------------------------------------------------------------------- /PaymentService/src/web/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PaymentService/src/web/api/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PaymentService/src/web/api/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/web/api/api.py -------------------------------------------------------------------------------- /PaymentService/src/web/api/documentation.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/web/api/documentation.py -------------------------------------------------------------------------------- /PaymentService/src/web/api/health_route.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/web/api/health_route.py -------------------------------------------------------------------------------- /PaymentService/src/web/api/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/web/api/models.py -------------------------------------------------------------------------------- /PaymentService/src/web/api/payment_api_adapter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/web/api/payment_api_adapter.py -------------------------------------------------------------------------------- /PaymentService/src/web/health_manager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/web/health_manager.py -------------------------------------------------------------------------------- /PaymentService/src/web/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/PaymentService/src/web/main.py -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/README.md -------------------------------------------------------------------------------- /__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /customers.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/customers.yaml -------------------------------------------------------------------------------- /deliveries.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/deliveries.yaml -------------------------------------------------------------------------------- /design_docs/PaymentService_sequence_diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/PaymentService_sequence_diagram.png -------------------------------------------------------------------------------- /design_docs/PaymentService_sequence_diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/PaymentService_sequence_diagram.puml -------------------------------------------------------------------------------- /design_docs/order_cancel_sequence_diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/order_cancel_sequence_diagram.png -------------------------------------------------------------------------------- /design_docs/order_cancel_sequence_diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/order_cancel_sequence_diagram.puml -------------------------------------------------------------------------------- /design_docs/order_container_diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/order_container_diagram.png -------------------------------------------------------------------------------- /design_docs/order_container_diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/order_container_diagram.puml -------------------------------------------------------------------------------- /design_docs/order_full_sequence_diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/order_full_sequence_diagram.png -------------------------------------------------------------------------------- /design_docs/order_full_sequence_diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/order_full_sequence_diagram.puml -------------------------------------------------------------------------------- /design_docs/order_hexagon_pattern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/order_hexagon_pattern.png -------------------------------------------------------------------------------- /design_docs/order_hexagon_pattern.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/order_hexagon_pattern.puml -------------------------------------------------------------------------------- /design_docs/order_sequence_diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/order_sequence_diagram.png -------------------------------------------------------------------------------- /design_docs/order_sequence_diagram.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/order_sequence_diagram.puml -------------------------------------------------------------------------------- /design_docs/payment_hexagon_pattern.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/payment_hexagon_pattern.png -------------------------------------------------------------------------------- /design_docs/payment_hexagon_pattern.puml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/design_docs/payment_hexagon_pattern.puml -------------------------------------------------------------------------------- /kitchen.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/kitchen.yaml -------------------------------------------------------------------------------- /pydoctor.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/pydoctor.ini -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ycc140/fastapi_messaging/HEAD/requirements.txt --------------------------------------------------------------------------------