新增六边形架构核心代码包,包含: 1. 协议适配器层:HTTP/SMTP/IMAP/SSH/GRPC等多协议适配器实现 2. 认证插件体系:基础认证、API密钥、HMAC等多类型认证插件 3. 执行编排框架:工具执行器、上下文构建、运行时治理组件 4. 用例端口与DTO:定义领域服务端口与数据传输对象 5. 厂商集成包框架:支持第三方系统集成扩展 6. 基础设施装配层:实现依赖注入与服务装配 所有代码遵循六边形架构设计原则,实现端口与适配器解耦,支持动态扩展与自动发现。
43 lines
1.9 KiB
Python
43 lines
1.9 KiB
Python
"""外部系统限界上下文重构包。
|
||
|
||
开发期间根目录为 ``external_systems/``,切换日重命名为 ``external_systems/``。
|
||
本包采用轻量六边形架构(Ports & Adapters):
|
||
|
||
- ``core/``:数据类 + 端口定义 + 校验函数,不依赖任何外部
|
||
- ``use_cases/``:用例编排 + DTO + Mapper + Context 构建,依赖 ``core/``
|
||
- ``framework/`` + ``adapters/persistence/``:实现端口,依赖 ``core/`` 端口
|
||
|
||
详见 ``docs/vibe/v1.1/设计方案/2026-06-17-外部系统六边形架构重构-设计方案-最终版.md``。
|
||
"""
|
||
|
||
from __future__ import annotations
|
||
|
||
|
||
def register_adapters() -> None:
|
||
"""显式注册所有外部系统适配器、认证插件与集成包。
|
||
|
||
由 ``server/utils/lifespan.py`` 在应用启动时调用(切换日后接入)。
|
||
|
||
调用顺序(蓝本 §12.1 第 8 条):
|
||
1. ``discover_adapters()``:扫描 ``framework/adapters/`` 注册协议适配器
|
||
2. ``discover_auth_plugins()``:扫描 ``framework/auth_plugins/`` 注册 9 个框架插件
|
||
3. ``discover_integration_packages()``:扫描 ``integrations/`` 注册厂商集成包
|
||
|
||
顺序约束说明:adapters 与 auth_plugins 互不依赖,可任意顺序;integrations 可能
|
||
注册渠道专属插件与适配器,放最后。三者均通过子包 ``__init__.py`` 自注册副作用完成。
|
||
"""
|
||
# 1. 自动发现并注册所有协议适配器
|
||
from yuxi.external_systems.framework.registry.discovery import discover_adapters
|
||
|
||
discover_adapters()
|
||
|
||
# 2. 自动发现并注册所有认证插件
|
||
from yuxi.external_systems.framework.auth_plugins.discovery import discover_auth_plugins
|
||
|
||
discover_auth_plugins()
|
||
|
||
# 3. 自动发现并导入所有集成包(由子包 __init__.py 自注册)
|
||
from yuxi.external_systems.integrations.discovery import discover_integration_packages
|
||
|
||
discover_integration_packages()
|