Release v0.1.2
This commit is contained in:
36
src/govoplan_campaign/backend/runtime.py
Normal file
36
src/govoplan_campaign/backend/runtime.py
Normal file
@@ -0,0 +1,36 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from typing import Any
|
||||
|
||||
_runtime_registry: object | None = None
|
||||
_runtime_settings: object | None = None
|
||||
|
||||
|
||||
def configure_runtime(*, registry: object | None = None, settings: object | None = None) -> None:
|
||||
global _runtime_registry, _runtime_settings
|
||||
if registry is not None:
|
||||
_runtime_registry = registry
|
||||
if settings is not None:
|
||||
_runtime_settings = settings
|
||||
|
||||
|
||||
def get_registry() -> object | None:
|
||||
return _runtime_registry
|
||||
|
||||
|
||||
def get_settings() -> object | None:
|
||||
return _runtime_settings
|
||||
|
||||
|
||||
def capability(name: str) -> Any | None:
|
||||
registry = get_registry()
|
||||
if registry is None or not hasattr(registry, "capability"):
|
||||
return None
|
||||
return registry.capability(name)
|
||||
|
||||
|
||||
def has_capability(name: str) -> bool:
|
||||
registry = get_registry()
|
||||
if registry is None or not hasattr(registry, "has_capability"):
|
||||
return False
|
||||
return bool(registry.has_capability(name))
|
||||
Reference in New Issue
Block a user