stocra.base_client

 1import abc
 2from typing import Dict, List, Optional
 3
 4from stocra.models import ErrorHandler, Token
 5
 6
 7class StocraBase(abc.ABC):
 8    _api_key: Optional[str] = None
 9    _error_handlers: Optional[List[ErrorHandler]] = None
10    _tokens: Dict[str, Dict[str, Token]] = dict()
11
12    def __init__(
13        self,
14        api_key: Optional[str] = None,
15        error_handlers: Optional[List[ErrorHandler]] = None,
16    ) -> None:
17        self._api_key = api_key
18        self._error_handlers = error_handlers
19
20    @property
21    def headers(self) -> dict:
22        if self._api_key:
23            return dict(Authorization=f"Bearer {self._api_key}")
24
25        return dict()
class StocraBase(abc.ABC):
 8class StocraBase(abc.ABC):
 9    _api_key: Optional[str] = None
10    _error_handlers: Optional[List[ErrorHandler]] = None
11    _tokens: Dict[str, Dict[str, Token]] = dict()
12
13    def __init__(
14        self,
15        api_key: Optional[str] = None,
16        error_handlers: Optional[List[ErrorHandler]] = None,
17    ) -> None:
18        self._api_key = api_key
19        self._error_handlers = error_handlers
20
21    @property
22    def headers(self) -> dict:
23        if self._api_key:
24            return dict(Authorization=f"Bearer {self._api_key}")
25
26        return dict()

Helper class that provides a standard way to create an ABC using inheritance.

StocraBase( api_key: Optional[str] = None, error_handlers: Optional[List[Callable[[stocra.models.StocraHTTPError], Union[bool, Awaitable[bool]]]]] = None)
13    def __init__(
14        self,
15        api_key: Optional[str] = None,
16        error_handlers: Optional[List[ErrorHandler]] = None,
17    ) -> None:
18        self._api_key = api_key
19        self._error_handlers = error_handlers
headers: dict