29 lines
674 B
Python
29 lines
674 B
Python
from abc import abstractmethod
|
|
|
|
from pymongo.asynchronous.collection import AsyncCollection
|
|
|
|
from beanie.odm.settings.base import ItemSettings
|
|
|
|
|
|
class OtherGettersInterface:
|
|
@classmethod
|
|
@abstractmethod
|
|
def get_settings(cls) -> ItemSettings:
|
|
pass
|
|
|
|
@classmethod
|
|
def get_pymongo_collection(cls) -> AsyncCollection:
|
|
return cls.get_settings().pymongo_collection
|
|
|
|
@classmethod
|
|
def get_collection_name(cls) -> str:
|
|
return cls.get_settings().name # type: ignore
|
|
|
|
@classmethod
|
|
def get_bson_encoders(cls):
|
|
return cls.get_settings().bson_encoders
|
|
|
|
@classmethod
|
|
def get_link_fields(cls):
|
|
return None
|