24 lines
762 B
Python
24 lines
762 B
Python
|
# pylint: disable=too-few-public-methods
|
||
|
from .exceptions import ObsoleteAttributeException
|
||
|
|
||
|
|
||
|
class ObsoleteAttribute:
|
||
|
def __init__(self, message: str, exc=ObsoleteAttributeException):
|
||
|
self.message = message
|
||
|
self.exc = exc
|
||
|
|
||
|
|
||
|
class ObsoleteChecker:
|
||
|
_obsolete_attributes = {
|
||
|
"run_server": ObsoleteAttribute("app.run_server has been replaced by app.run"),
|
||
|
"long_callback": ObsoleteAttribute(
|
||
|
"app.long_callback has been removed, use app.callback(..., background=True) instead"
|
||
|
),
|
||
|
}
|
||
|
|
||
|
def __getattr__(self, name: str):
|
||
|
if name in self._obsolete_attributes:
|
||
|
err = self._obsolete_attributes[name]
|
||
|
raise err.exc(err.message)
|
||
|
return getattr(self.__dict__, name)
|