MCPcopy
hub / github.com/spaceandtimefdn/SxT-Python-SDK / SXTUser

Class SXTUser

src/spaceandtime/sxtuser.py:13–662  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

11
12
13class SXTUser():
14 user_id: str = ''
15 email: str = ''
16 gateway_password = ''
17 logger: logging.Logger = None
18 key_manager: SXTKeyManager = None
19 ENCODINGS = SXTKeyEncodings
20 base_api: SXTBaseAPI = None
21 access_token: str = ''
22 refresh_token: str = ''
23 access_token_expire_epoch: int = 0
24 refresh_token_expire_epoch: int = 0
25 api_key:str = ''
26 auto_reauthenticate:bool = False
27 start_time:datetime.datetime = None
28 __bs: list = None
29 __usrtyp__:list = None
30 __usrinfo__:dict = {}
31
32 def __init__(self, dotenv_file:Path = None, user_id:str = None,
33 user_private_key:str = None, api_url:str = None,
34 encoding:SXTKeyEncodings = None, authenticate:bool = False,
35 application_name:str = None,
36 logger:logging.Logger = None,
37 SpaceAndTime_parent:object = None,
38 api_key:str = None, access_token:str = None,
39 **kwargs) -> None:
40
41 # start with parent import
42 if SpaceAndTime_parent:
43 if not application_name: self.application_name = SpaceAndTime_parent.application_name
44 if not logger: logger = SpaceAndTime_parent.logger
45 self.start_time = SpaceAndTime_parent.start_time if SpaceAndTime_parent.start_time else datetime.datetime.now()
46 else:
47 self.start_time = datetime.datetime.now()
48
49 if logger:
50 self.logger = logger
51 else:
52 self.logger = logging.getLogger()
53 self.logger.setLevel(logging.INFO)
54 if len(self.logger.handlers) == 0:
55 self.logger.addHandler( logging.StreamHandler() )
56 self.logger.debug(f'SXT User instantiating...')
57
58 encoding = encoding if encoding else SXTKeyEncodings.BASE64
59 self.key_manager = SXTKeyManager(private_key = user_private_key, encoding = encoding, logger=self.logger)
60 self.base_api = SXTBaseAPI(logger = self.logger)
61 self.__bs = []
62 self.__usrtyp__ = {'type':'', 'timeout':datetime.datetime.now()}
63
64 # from dotenv file, if exists
65 dotenv_file = Path('./.env') if not dotenv_file and Path('./.env').resolve().exists() else dotenv_file
66 if dotenv_file: self.load(dotenv_file)
67
68 # overwrite userid, api_url, and private key (and public key, by extension), if supplied
69 if user_private_key != None: self.private_key = user_private_key
70 if user_id != None: self.user_id = user_id

Callers 7

__init__Method · 0.90
__init__Method · 0.90
test_resource_methodsFunction · 0.90
test_sxt_userFunction · 0.90
test_sxt_user_2Function · 0.90

Calls

no outgoing calls

Tested by 4

test_resource_methodsFunction · 0.72
test_sxt_userFunction · 0.72
test_sxt_user_2Function · 0.72