extension.py 585 B

1234567891011121314151617181920212223242526
  1. from contextlib import asynccontextmanager
  2. import config
  3. from extensions.shaanxi.client import GatewayClient
  4. from extensions.shaanxi.settings import GatewaySettings
  5. def enabled():
  6. return config.get_bool("SHANXI_GATEWAY_ENABLED", False)
  7. def validate_config():
  8. GatewaySettings.from_config()
  9. @asynccontextmanager
  10. async def gateway_service(dependencies):
  11. client = GatewayClient(GatewaySettings.from_config())
  12. try:
  13. yield client
  14. finally:
  15. await client.close()
  16. def setup(registry):
  17. registry.register_service("shaanxi_gateway", gateway_service)