26 lines
759 B
Python
26 lines
759 B
Python
|
|
from typing import TypeVar, Generic, TYPE_CHECKING
|
||
|
|
|
||
|
|
if TYPE_CHECKING:
|
||
|
|
from ...schemas.orm.database.DatabasesContainer import DatabasesContainer as _DatabasesContainer
|
||
|
|
|
||
|
|
TContainer = TypeVar('TContainer', bound = '_DatabasesContainer')
|
||
|
|
|
||
|
|
class DatabasesRepo(Generic[TContainer]):
|
||
|
|
|
||
|
|
def __init__(self):
|
||
|
|
self.container: TContainer
|
||
|
|
|
||
|
|
@staticmethod
|
||
|
|
def generic(database_id : str):
|
||
|
|
from .databases import Database
|
||
|
|
return Database.generic(database_id)
|
||
|
|
|
||
|
|
class _Repositories(Generic[TContainer]):
|
||
|
|
|
||
|
|
def __init__(self):
|
||
|
|
from .pages import _Pages
|
||
|
|
self.pages = _Pages()
|
||
|
|
self.databases: DatabasesRepo[TContainer] = DatabasesRepo()
|
||
|
|
|
||
|
|
repo: _Repositories = _Repositories()
|
||
|
|
__all__ = ["repo", "_Repositories"]
|