mirror of
https://github.com/aljazceru/bitfinex-api-py.git
synced 2025-12-20 15:24:21 +01:00
Add hierarchy logic to custom exceptions.
This commit is contained in:
18
bfxapi/exceptions.py
Normal file
18
bfxapi/exceptions.py
Normal file
@@ -0,0 +1,18 @@
|
||||
__all__ = [
|
||||
"BfxBaseException",
|
||||
"LabelerSerializerException"
|
||||
]
|
||||
|
||||
class BfxBaseException(Exception):
|
||||
"""
|
||||
Base class for every custom exception in bfxapi/rest/exceptions.py and bfxapi/websocket/exceptions.py.
|
||||
"""
|
||||
|
||||
pass
|
||||
|
||||
class LabelerSerializerException(BfxBaseException):
|
||||
"""
|
||||
This exception indicates an error thrown by the _Serializer class in bfxapi/labeler.py.
|
||||
"""
|
||||
|
||||
pass
|
||||
@@ -1,3 +1,5 @@
|
||||
from .exceptions import LabelerSerializerException
|
||||
|
||||
from typing import Generic, TypeVar, Iterable, Optional, List, Any
|
||||
|
||||
T = TypeVar("T")
|
||||
@@ -10,7 +12,7 @@ class _Serializer(Generic[T]):
|
||||
labels = list(filter(lambda label: label not in (skip or list()), self.__labels))
|
||||
|
||||
if len(labels) > len(args):
|
||||
raise Exception("<labels> and <*args> arguments should contain the same amount of elements.")
|
||||
raise LabelerSerializerException("<labels> and <*args> arguments should contain the same amount of elements.")
|
||||
|
||||
for index, label in enumerate(labels):
|
||||
if label not in self.__IGNORE:
|
||||
|
||||
@@ -1,12 +1,16 @@
|
||||
from ..exceptions import BfxBaseException
|
||||
|
||||
__all__ = [
|
||||
"BfxRestException",
|
||||
|
||||
"RequestParametersError",
|
||||
"ResourceNotFound",
|
||||
"InvalidAuthenticationCredentials"
|
||||
]
|
||||
|
||||
class BfxRestException(Exception):
|
||||
class BfxRestException(BfxBaseException):
|
||||
"""
|
||||
Base class for all exceptions defined in bfxapi/rest/exceptions.py.
|
||||
Base class for all custom exceptions in bfxapi/rest/exceptions.py.
|
||||
"""
|
||||
|
||||
pass
|
||||
|
||||
Reference in New Issue
Block a user