policymesh-policy-driven-fe.../policy_mesh/registry.py

25 lines
679 B
Python

"""In-memory registry for adapters and contracts (MVP).
- This is a lightweight stand-in for a proper contract registry with versioning.
"""
from __future__ import annotations
from typing import Dict, Any
class Registry:
def __init__(self) -> None:
self.adapters: Dict[str, Dict[str, Any]] = {}
def register_adapter(self, name: str, version: str, meta: Dict[str, Any]) -> None:
self.adapters[name] = {"version": version, "meta": meta}
def get_adapter(self, name: str) -> Dict[str, Any] | None:
return self.adapters.get(name)
def list_adapters(self) -> Dict[str, Dict[str, Any]]:
return self.adapters
registry = Registry()