sysnet-pyutils 1.2.6__py3-none-any.whl → 1.3.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- sysnet_pyutils/utils.py +50 -0
- {sysnet_pyutils-1.2.6.dist-info → sysnet_pyutils-1.3.0.dist-info}/METADATA +11 -6
- {sysnet_pyutils-1.2.6.dist-info → sysnet_pyutils-1.3.0.dist-info}/RECORD +6 -6
- {sysnet_pyutils-1.2.6.dist-info → sysnet_pyutils-1.3.0.dist-info}/WHEEL +1 -1
- {sysnet_pyutils-1.2.6.dist-info → sysnet_pyutils-1.3.0.dist-info}/licenses/LICENSE +0 -0
- {sysnet_pyutils-1.2.6.dist-info → sysnet_pyutils-1.3.0.dist-info}/top_level.txt +0 -0
sysnet_pyutils/utils.py
CHANGED
@@ -918,3 +918,53 @@ def parse_ldap_name(ldap_name: str) -> Tuple[Union[str, None], Union[str, None]]
|
|
918
918
|
cn = item.split('=')[-1]
|
919
919
|
break
|
920
920
|
return cn, ldap_name
|
921
|
+
|
922
|
+
|
923
|
+
class Context(LoggedObject, metaclass=Singleton):
|
924
|
+
def __init__(
|
925
|
+
self,
|
926
|
+
config=None,
|
927
|
+
api_key=None,
|
928
|
+
user_name=None,
|
929
|
+
agenda=None,
|
930
|
+
cert_file=None,
|
931
|
+
cert_pass=None):
|
932
|
+
super().__init__(object_name='CONTEXT')
|
933
|
+
self.config = config
|
934
|
+
if self.config is None:
|
935
|
+
self.log.error(f"{self.name} FAILED - Missing config")
|
936
|
+
self.api_key = api_key
|
937
|
+
self.user_name = user_name
|
938
|
+
self.agenda = agenda
|
939
|
+
self.authenticated = False
|
940
|
+
self.cert_file = cert_file
|
941
|
+
self.cert_pass = cert_pass
|
942
|
+
self.log.info(f"{self.name} Created")
|
943
|
+
|
944
|
+
def clear(self):
|
945
|
+
self.api_key = None
|
946
|
+
self.user_name = None
|
947
|
+
self.agenda = None
|
948
|
+
self.authenticated = False
|
949
|
+
self.cert_file = None
|
950
|
+
self.cert_pass = None
|
951
|
+
self.log.info(f"{self.name} Cleared")
|
952
|
+
|
953
|
+
def check_api_key(self, api_key):
|
954
|
+
self.clear()
|
955
|
+
if api_key in [None, '']:
|
956
|
+
return False
|
957
|
+
for agenda in self.config.keys():
|
958
|
+
if 'api_keys' not in self.config[agenda]:
|
959
|
+
continue
|
960
|
+
for ak in self.config[agenda]['api_keys']:
|
961
|
+
if api_key in ak.keys():
|
962
|
+
self.api_key = api_key
|
963
|
+
self.agenda = agenda
|
964
|
+
self.user_name = ak[api_key]
|
965
|
+
self.authenticated = True
|
966
|
+
self.log.info(f"{self.name} - User '{self.user_name}' logged in")
|
967
|
+
break
|
968
|
+
if self.authenticated:
|
969
|
+
break
|
970
|
+
return self.authenticated
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: sysnet-pyutils
|
3
|
-
Version: 1.
|
3
|
+
Version: 1.3.0
|
4
4
|
Summary: Python Utilities
|
5
5
|
Author-email: Data Developer <info@sysnet.cz>
|
6
6
|
Project-URL: Homepage, https://github.com/SYSNET-CZ/pyutils
|
@@ -81,12 +81,12 @@ Konvertuje hex string na int
|
|
81
81
|
#### cron_to_dict(cron):
|
82
82
|
Konvertuje cron text do slovníku
|
83
83
|
* param cron: cron text (například '35 21 * * *')
|
84
|
-
* return:
|
84
|
+
* return: dict of cron
|
85
85
|
--------------------------------------------------------
|
86
86
|
#### cs_bool(value=None):
|
87
87
|
Vrátí českou textovou hodnotu 'ano'/'ne' pokud je bool(value) True/False
|
88
88
|
* param value: Obecný objekt
|
89
|
-
* return:
|
89
|
+
* return: 'ano' or 'ne'
|
90
90
|
--------------------------------------------------------
|
91
91
|
#### date_to_datetime(date_value):
|
92
92
|
Konvertuje date na datetime v lokální časové zóně
|
@@ -186,7 +186,7 @@ Opraví PID
|
|
186
186
|
----------------------------------------------------------------
|
187
187
|
#### pid_next():
|
188
188
|
Vygeneruje korektní PID
|
189
|
-
* return:
|
189
|
+
* return: PID
|
190
190
|
----------------------------------------------------------------
|
191
191
|
#### remove_empty(source_list):
|
192
192
|
Odstraní prázdné položky ze seznamu
|
@@ -256,7 +256,7 @@ Rekurzivně převede klíče ve slovníku z VelbloudíNotace do hadí_notace
|
|
256
256
|
Parsuje XML string do XML dictionary
|
257
257
|
podle pravidel viz https://github.com/martinblech/xmltodict
|
258
258
|
* param xml_text: XML text
|
259
|
-
* return:
|
259
|
+
* return: XML dictionary
|
260
260
|
--------------------------------------------------------------------------------------------------------------------------------
|
261
261
|
#### dict_to_xml(xml_dict):
|
262
262
|
Parsuje XML dict do XML textu podle
|
@@ -279,7 +279,7 @@ Konvertuje písmennou hodnotu na celočíselnou
|
|
279
279
|
|
280
280
|
#### local_now():
|
281
281
|
Vrací aktuální časovou značku v lokální časové zóně.
|
282
|
-
* return:
|
282
|
+
* return: datetime.datetime
|
283
283
|
|
284
284
|
#### is_valid_unid(unid):
|
285
285
|
Kontrola validity HCL Notes UNIID
|
@@ -365,3 +365,8 @@ Typ osoby (zdroj CRŽP):
|
|
365
365
|
- businessNaturalPerson: tuzemská fyzická osoba podnikající
|
366
366
|
- naturalPerson: tuzemská fyzická osoba nepodnikající
|
367
367
|
- foreignNaturalPerson: zahraniční fyzická osoba podnikající
|
368
|
+
|
369
|
+
|
370
|
+
### Verze 1.3.0
|
371
|
+
|
372
|
+
Přidána třida **Context**, která se používá při ověřování API-KEY
|
@@ -7,11 +7,11 @@ sysnet_pyutils/ident.py,sha256=OkGne8xLEFd2zNdIm7HTPJ_K-fIN9rz7tOR-H0PWDRE,2845
|
|
7
7
|
sysnet_pyutils/log.py,sha256=SFuCPvFTg31LFvnyG24hCTe73FonfS0_FaAHRBhEvlw,2165
|
8
8
|
sysnet_pyutils/ses.py,sha256=WJzs0y2QnF4XGDGjls_W0p0v6DJ4fZ4_97m3XbzpaFw,2713
|
9
9
|
sysnet_pyutils/tools.py,sha256=ZioHvUIufrhuJyZLdPnuMUD8Li5LTljSMSCxqRnKIi4,377
|
10
|
-
sysnet_pyutils/utils.py,sha256=
|
10
|
+
sysnet_pyutils/utils.py,sha256=koG5SY0DQWTJ9qBv1C1sXq9pN6G2KeN9POGzerZJQX4,25160
|
11
11
|
sysnet_pyutils/models/__init__.py,sha256=oozOr_DKhenkM9BDaPOmtbLXhP5vtMUCjBPEjZDW4GQ,167
|
12
12
|
sysnet_pyutils/models/general.py,sha256=6AE5RfLmvW4oq7V6Iqpbq7l-Lsqt2Kkh7yLaXu58fRc,23386
|
13
|
-
sysnet_pyutils-1.
|
14
|
-
sysnet_pyutils-1.
|
15
|
-
sysnet_pyutils-1.
|
16
|
-
sysnet_pyutils-1.
|
17
|
-
sysnet_pyutils-1.
|
13
|
+
sysnet_pyutils-1.3.0.dist-info/licenses/LICENSE,sha256=bx5iLIKjgAdYQ7sISn7DsfHRKkoCUm1154sJJKhgqnU,35184
|
14
|
+
sysnet_pyutils-1.3.0.dist-info/METADATA,sha256=0k0neOAOpHp4zbpbo_LY7kHD7b2YEwI38jGL-LSmMMk,15835
|
15
|
+
sysnet_pyutils-1.3.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
16
|
+
sysnet_pyutils-1.3.0.dist-info/top_level.txt,sha256=ZKTltQWbLlWBXw4oovo1w7ui-JQ1WoyECqMSWdBj6XE,15
|
17
|
+
sysnet_pyutils-1.3.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|