25 lines
679 B
Python
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()
|