pyegeria 5.3.7.2__py3-none-any.whl → 5.3.7.8__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.
- pyegeria/__init__.py +2 -1
- pyegeria/_client.py +4 -1
- pyegeria/commands/cat/dr_egeria_md.py +23 -16
- pyegeria/commands/cat/get_project_dependencies.py +1 -1
- pyegeria/commands/cat/get_project_structure.py +1 -1
- pyegeria/commands/cat/glossary_actions.py +11 -18
- pyegeria/dr.egeria spec.md +9 -0
- pyegeria/glossary_browser_omvs.py +1 -1
- pyegeria/glossary_manager_omvs.py +1 -1
- pyegeria/md_processing_helpers.py +58 -0
- pyegeria/md_processing_utils.py +533 -64
- pyegeria/md_processing_utils_orig.py +1103 -0
- pyegeria/project_manager_omvs.py +79 -3
- pyegeria/shared_state.py +35 -0
- {pyegeria-5.3.7.2.dist-info → pyegeria-5.3.7.8.dist-info}/METADATA +2 -2
- {pyegeria-5.3.7.2.dist-info → pyegeria-5.3.7.8.dist-info}/RECORD +19 -15
- {pyegeria-5.3.7.2.dist-info → pyegeria-5.3.7.8.dist-info}/LICENSE +0 -0
- {pyegeria-5.3.7.2.dist-info → pyegeria-5.3.7.8.dist-info}/WHEEL +0 -0
- {pyegeria-5.3.7.2.dist-info → pyegeria-5.3.7.8.dist-info}/entry_points.txt +0 -0
pyegeria/project_manager_omvs.py
CHANGED
@@ -635,7 +635,7 @@ class ProjectManager(Client):
|
|
635
635
|
|
636
636
|
return resp
|
637
637
|
|
638
|
-
async def
|
638
|
+
async def _async_get_project_by_guid(
|
639
639
|
self,
|
640
640
|
project_guid: str,
|
641
641
|
effective_time: str = None,
|
@@ -677,7 +677,7 @@ class ProjectManager(Client):
|
|
677
677
|
resp = await self._async_make_request("GET", url, body)
|
678
678
|
return resp.json()
|
679
679
|
|
680
|
-
def
|
680
|
+
def get_project_by_guid(self, project_guid: str, effective_time: str = None) -> dict | str:
|
681
681
|
"""Return the properties of a specific project.
|
682
682
|
|
683
683
|
Parameters
|
@@ -707,11 +707,87 @@ class ProjectManager(Client):
|
|
707
707
|
"""
|
708
708
|
loop = asyncio.get_event_loop()
|
709
709
|
resp = loop.run_until_complete(
|
710
|
-
self.
|
710
|
+
self._async_get_project_by_guid(project_guid, effective_time)
|
711
711
|
)
|
712
712
|
|
713
713
|
return resp
|
714
714
|
|
715
|
+
async def _async_get_project_graph(
|
716
|
+
self,
|
717
|
+
project_guid: str,
|
718
|
+
effective_time: str = None,
|
719
|
+
) -> dict | str:
|
720
|
+
"""Return the mermaid graph of a specific project. Async version.
|
721
|
+
|
722
|
+
Parameters
|
723
|
+
----------
|
724
|
+
project_guid: str,
|
725
|
+
unique identifier of the project.
|
726
|
+
effective_time: str, [default=None], optional
|
727
|
+
Effective time of the query. If not specified will default to any time. Time in ISO8601 format is assumed.
|
728
|
+
|
729
|
+
|
730
|
+
Returns
|
731
|
+
-------
|
732
|
+
str
|
733
|
+
|
734
|
+
A mermaid markdown string representing the graph of the project.
|
735
|
+
Raises
|
736
|
+
------
|
737
|
+
|
738
|
+
InvalidParameterException
|
739
|
+
If the client passes incorrect parameters on the request - such as bad URLs or invalid values
|
740
|
+
PropertyServerException
|
741
|
+
Raised by the server when an issue arises in processing a valid request
|
742
|
+
NotAuthorizedException
|
743
|
+
The principle specified by the user_id does not have authorization for the requested action
|
744
|
+
|
745
|
+
"""
|
746
|
+
|
747
|
+
validate_guid(project_guid)
|
748
|
+
body = {
|
749
|
+
"effective_time": effective_time,
|
750
|
+
}
|
751
|
+
url = f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/project-manager/projects/{project_guid}/graph"
|
752
|
+
|
753
|
+
resp = await self._async_make_request("GET", url, body)
|
754
|
+
return resp.json().get('element',NO_ELEMENTS_FOUND)
|
755
|
+
|
756
|
+
def get_project_graph(self, project_guid: str, effective_time: str = None) -> dict | str:
|
757
|
+
"""Return the mermaid graph of a specific project.
|
758
|
+
|
759
|
+
Parameters
|
760
|
+
----------
|
761
|
+
project_guid: str,
|
762
|
+
unique identifier of the project.
|
763
|
+
effective_time: str, [default=None], optional
|
764
|
+
Effective time of the query. If not specified will default to any time. Time in ISO8601 format is assumed.
|
765
|
+
|
766
|
+
|
767
|
+
Returns
|
768
|
+
-------
|
769
|
+
str
|
770
|
+
|
771
|
+
A mermaid markdown string representing the graph of the project.
|
772
|
+
Raises
|
773
|
+
------
|
774
|
+
|
775
|
+
InvalidParameterException
|
776
|
+
If the client passes incorrect parameters on the request - such as bad URLs or invalid values
|
777
|
+
PropertyServerException
|
778
|
+
Raised by the server when an issue arises in processing a valid request
|
779
|
+
NotAuthorizedException
|
780
|
+
The principle specified by the user_id does not have authorization for the requested action
|
781
|
+
|
782
|
+
"""
|
783
|
+
loop = asyncio.get_event_loop()
|
784
|
+
resp = loop.run_until_complete(
|
785
|
+
self._async_get_project_graph(project_guid, effective_time)
|
786
|
+
)
|
787
|
+
|
788
|
+
return resp
|
789
|
+
|
790
|
+
|
715
791
|
#
|
716
792
|
# Create project methods
|
717
793
|
#
|
pyegeria/shared_state.py
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
"""
|
2
|
+
This module provides shared state for the pyegeria package.
|
3
|
+
It contains variables that need to be accessed and modified by multiple modules.
|
4
|
+
"""
|
5
|
+
|
6
|
+
# Dictionary to store element information to avoid redundant API calls
|
7
|
+
element_dictionary = {}
|
8
|
+
|
9
|
+
def get_element_dictionary():
|
10
|
+
"""
|
11
|
+
Get the shared element dictionary.
|
12
|
+
|
13
|
+
Returns:
|
14
|
+
dict: The shared element dictionary
|
15
|
+
"""
|
16
|
+
global element_dictionary
|
17
|
+
return element_dictionary
|
18
|
+
|
19
|
+
def update_element_dictionary(key, value):
|
20
|
+
"""
|
21
|
+
Update the shared element dictionary with a new key-value pair.
|
22
|
+
|
23
|
+
Args:
|
24
|
+
key (str): The key to update
|
25
|
+
value (dict): The value to associate with the key
|
26
|
+
"""
|
27
|
+
global element_dictionary
|
28
|
+
element_dictionary[key] = value
|
29
|
+
|
30
|
+
def clear_element_dictionary():
|
31
|
+
"""
|
32
|
+
Clear the shared element dictionary.
|
33
|
+
"""
|
34
|
+
global element_dictionary
|
35
|
+
element_dictionary.clear()
|
@@ -1,12 +1,12 @@
|
|
1
1
|
Metadata-Version: 2.3
|
2
2
|
Name: pyegeria
|
3
|
-
Version: 5.3.7.
|
3
|
+
Version: 5.3.7.8
|
4
4
|
Summary: A python client for Egeria
|
5
5
|
License: Apache 2.0
|
6
6
|
Keywords: egeria,metadata,governance
|
7
7
|
Author: Dan Wolfson
|
8
8
|
Author-email: dan.wolfson@pdr-associates.com
|
9
|
-
Requires-Python:
|
9
|
+
Requires-Python: >3.12,<4.0.0
|
10
10
|
Classifier: License :: OSI Approved :: Apache Software License
|
11
11
|
Classifier: License :: Other/Proprietary License
|
12
12
|
Classifier: Programming Language :: Python
|
@@ -1,6 +1,6 @@
|
|
1
1
|
pyegeria/README.md,sha256=PwX5OC7-YSZUCIsoyHh1O-WBM2hE84sm3Bd4O353NOk,1464
|
2
|
-
pyegeria/__init__.py,sha256=
|
3
|
-
pyegeria/_client.py,sha256=
|
2
|
+
pyegeria/__init__.py,sha256=_ajfbBLCVW8RnSWYK4tGXLqjHEdnzCW2q815GENuFS0,30383
|
3
|
+
pyegeria/_client.py,sha256=IAX6y11zqX3Dz1XwbYXQqHNdi7HmKQClI0Li5cjUSUA,31884
|
4
4
|
pyegeria/_deprecated_gov_engine.py,sha256=dWNcwVsE5__dF2u4QiIyQrssozzzOjBbLld8MdpmVCQ,17264
|
5
5
|
pyegeria/_exceptions.py,sha256=1SrnV194V4_YJNnNAU0myTHQ3dhLn4GF2B2gZcj1u90,18153
|
6
6
|
pyegeria/_globals.py,sha256=a_irI6oGuBLks2LzQHkSdK6xWbPdJCPRjqxK7PKxwgw,991
|
@@ -17,14 +17,14 @@ pyegeria/commands/cat/__init__.py,sha256=5OCy4m_yZsnSxdy_gvkCyP_OkjvuWKimqUGHYCJ
|
|
17
17
|
pyegeria/commands/cat/dr_egeria_inbox/glossary_creation_experiment.ipynb,sha256=dbzNu90fCKNohOWVSRBOB1GLyd95x8Qw51I5AkaPtso,11552
|
18
18
|
pyegeria/commands/cat/dr_egeria_inbox/glossary_exp.md,sha256=KsUeTzDe5QkrTmIfIAXR74qZ29oSfRW-NAEn0RYIRqM,2534
|
19
19
|
pyegeria/commands/cat/dr_egeria_jupyter.py,sha256=U-3m9BMoCXj2fvuawr3PTc2HQWAXThqQ3sIXjyCWv6s,5912
|
20
|
-
pyegeria/commands/cat/dr_egeria_md.py,sha256
|
20
|
+
pyegeria/commands/cat/dr_egeria_md.py,sha256=-WCnNL3_1hjsYgVy5Z3eixg7MED7O1K0ldfkX7tFpWQ,10378
|
21
21
|
pyegeria/commands/cat/exp_list_glossaries.py,sha256=dC6Bnfm3YSMTKPP146qeslIFRiZnGu5b7iDYE07p4iU,5817
|
22
22
|
pyegeria/commands/cat/get_asset_graph.py,sha256=xnXJfpDTVH1TJ2TwE3dtjaXU36Di6-N6JAyhothzz2o,12461
|
23
23
|
pyegeria/commands/cat/get_collection.py,sha256=kXPcP8u-SMWfrVyyBhNoxG8mcgB7EV_5i9N9w_IBU7o,5379
|
24
|
-
pyegeria/commands/cat/get_project_dependencies.py,sha256=
|
25
|
-
pyegeria/commands/cat/get_project_structure.py,sha256=
|
24
|
+
pyegeria/commands/cat/get_project_dependencies.py,sha256=XwstxuDxDDuP2uN1oJi0PTDZVLbqgcc_3lxh_prBZvY,5987
|
25
|
+
pyegeria/commands/cat/get_project_structure.py,sha256=5uxWMqNve592OT73GRCO2KoBkgLWRNuQv_emWpS-Fw8,5975
|
26
26
|
pyegeria/commands/cat/get_tech_type_elements.py,sha256=IznytHXwDOFriGM6mypV9wuEeM-vT2s66cUzf-IROog,6147
|
27
|
-
pyegeria/commands/cat/glossary_actions.py,sha256=
|
27
|
+
pyegeria/commands/cat/glossary_actions.py,sha256=SO0PH_Zy34Sbv31FEwCnZalNcxjGVeMT3T352BxSY34,19590
|
28
28
|
pyegeria/commands/cat/list_assets.py,sha256=CdJ2coKvvQv2VwJO0Sp9Eg9Fu_uvpC21tgjrdtT9Yz4,6315
|
29
29
|
pyegeria/commands/cat/list_categories.py,sha256=VYZwQC9vezyGFm5dowD-aVszSKlS2MYo7d1KftdbycU,7595
|
30
30
|
pyegeria/commands/cat/list_cert_types.py,sha256=HmrTks0SSYgSMsYz3LqfX5kwDQ6D9KMcynoR_xlWtnE,7137
|
@@ -218,6 +218,7 @@ pyegeria/commands/tech/table_tech_templates.py,sha256=jI1c9YKa3KirArMNXeCRKeaiVd
|
|
218
218
|
pyegeria/commands/tech/x_list_related_elements.py,sha256=ynaw792VnbMZ9IXBi5mmG7xBfC0kn0esKiFTsjvLGzc,5900
|
219
219
|
pyegeria/core_omag_server_config.py,sha256=pNQpocICkZx8sRsTw5DPUe-TFyxlIo1U88qqgci_f7I,97764
|
220
220
|
pyegeria/create_tech_guid_lists.py,sha256=hf5q8Xrdsz-bqeIW3yTORZ1XB6_BrKzLDWWwC_bNG2g,4811
|
221
|
+
pyegeria/dr.egeria spec.md,sha256=QC_z3EqJ0WW18NYQFW_AtqO4SMWH5MJNVmM--54VzX4,959
|
221
222
|
pyegeria/egeria_cat_client.py,sha256=d8dQNPLzL4efi99OJfH1T-Rt1N0k9Rf9LX8LpuhiFls,2179
|
222
223
|
pyegeria/egeria_client.py,sha256=UjvwDkTO3iYaPEGuPZJTiK_k_i4ZuVeB8QMTVNUHwxg,4490
|
223
224
|
pyegeria/egeria_config_client.py,sha256=3TZUeXSl1f7SQ2WWYTbgOu1Cu1YqApilErAgjZLzbWY,1391
|
@@ -225,25 +226,28 @@ pyegeria/egeria_my_client.py,sha256=eOKLk2zdI6FHZnhAimfR_0yNdBjpUgD41dJZcJODcqE,
|
|
225
226
|
pyegeria/egeria_tech_client.py,sha256=uycgYfCpb4jzFfaQ7I5JxbZ5PKsWdaWxLOJjbw6C2Zk,3817
|
226
227
|
pyegeria/feedback_manager_omvs.py,sha256=0xBs0p54vmdfVYYgQ8pOanLC4fxfgTk1Z61Y6D1U7_I,152978
|
227
228
|
pyegeria/full_omag_server_config.py,sha256=CQqLCy_3DZFvJZEOcGf50HWdFaWpiAIs6z-kKyjvpDA,47464
|
228
|
-
pyegeria/glossary_browser_omvs.py,sha256=
|
229
|
-
pyegeria/glossary_manager_omvs.py,sha256=
|
229
|
+
pyegeria/glossary_browser_omvs.py,sha256=hkYa5xGV_WXTUAMLx4VjsGhnC7PkVpmVFVcwfUTKDGE,109582
|
230
|
+
pyegeria/glossary_manager_omvs.py,sha256=ZJrRUwx3Z1ebbjy60_9PLYh7gAtInE94cPtsPRM7FtM,70273
|
230
231
|
pyegeria/m_test.py,sha256=M5-M2ZczsAJLXWfSeqTTADHdx6Ku-y4PbQ4M21JthAE,7778
|
231
|
-
pyegeria/
|
232
|
+
pyegeria/md_processing_helpers.py,sha256=sV-ciVg_xOGVGTH_CMpH2B5k3V5jzdFp_XvnQQ5xafw,2131
|
233
|
+
pyegeria/md_processing_utils.py,sha256=n7PT3wsnv6eLhgnRo_1N3C-HTrHK6459FTsJ1hqgbTU,65055
|
234
|
+
pyegeria/md_processing_utils_orig.py,sha256=WGoVpsV03wwgv9YwDDHZ0EO4-opN8BdoISt4ZhkYGuQ,52492
|
232
235
|
pyegeria/mermaid_utilities.py,sha256=sQqdFUWdNpHu9d3Tk9UVe80M-5bOzses0XcFYX5FF-E,54254
|
233
236
|
pyegeria/metadata_explorer_omvs.py,sha256=xHnZTQKbd6XwOhYia-RiIisrvZcqHi0SL1l6OCf04Gk,86911
|
234
237
|
pyegeria/my_profile_omvs.py,sha256=d0oJYCJG7pS9BINPuGciVa00ac0jwPHNANXDCLginEc,34720
|
235
238
|
pyegeria/platform_services.py,sha256=YEpZsGGsbSdesN8ceyFhV0OMzKG6znTZrREMTRimLps,41701
|
236
|
-
pyegeria/project_manager_omvs.py,sha256=
|
239
|
+
pyegeria/project_manager_omvs.py,sha256=UA-HcLTJ0rAYQXv-l5xLN7hTUinBTsrbwT_MmC8lx0U,70165
|
237
240
|
pyegeria/registered_info.py,sha256=y0-LgDIQXpph0lEWxIOG3_HsqX_Z2iAIb3xu4Aa4B70,6344
|
238
241
|
pyegeria/runtime_manager_omvs.py,sha256=Z5wY9ignNjil8O6yjihZftxkGoh9A4PQDcXhoIsOIT8,79698
|
239
242
|
pyegeria/server_operations.py,sha256=5k0KVz3u8qRLwtz16zT3J86LZY3pkUrMDcps8srmq1A,16831
|
243
|
+
pyegeria/shared_state.py,sha256=KqmvWAvct1o6Bte9accfAbI-qAZu-UtCUZiYi7eYYM8,907
|
240
244
|
pyegeria/solution_architect_omvs.py,sha256=x6CfPTyn1l2DFYVEFP0t_rT9uVjoFr596hBBeuVaMRg,22093
|
241
245
|
pyegeria/template_manager_omvs.py,sha256=PfJ9dOfmBvf59DgRdZ9Dl1Kl_UYqjF-JncXVnbCqLZU,42408
|
242
246
|
pyegeria/utils.py,sha256=GCt1C0bp0Xng1ahzbZhzV9qQwH7Dj93IaCt2dvWb-sg,5417
|
243
247
|
pyegeria/valid_metadata_omvs.py,sha256=Xq9DqBQvBFFJzaFIRKcVZ2k4gJvSh9yeXs_j-O3vn1w,65050
|
244
248
|
pyegeria/x_action_author_omvs.py,sha256=RcqSzahUKCtvb_3u_wyintAlc9WFkC_2v0E12TZs8lQ,6433
|
245
|
-
pyegeria-5.3.7.
|
246
|
-
pyegeria-5.3.7.
|
247
|
-
pyegeria-5.3.7.
|
248
|
-
pyegeria-5.3.7.
|
249
|
-
pyegeria-5.3.7.
|
249
|
+
pyegeria-5.3.7.8.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
250
|
+
pyegeria-5.3.7.8.dist-info/METADATA,sha256=4Pjg58x9foW-W7Uq0AbbwL4G2vdRvogrPtjP0ewZHs0,2740
|
251
|
+
pyegeria-5.3.7.8.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
|
252
|
+
pyegeria-5.3.7.8.dist-info/entry_points.txt,sha256=eAvQ_vkejlF3JzMzEc5VD93ymLA_hSFV0HM8fntG-d8,6791
|
253
|
+
pyegeria-5.3.7.8.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|