pyegeria 5.3.7.8__py3-none-any.whl → 5.3.8.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.
@@ -675,7 +675,7 @@ class ProjectManager(Client):
675
675
  url = f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/project-manager/projects/{project_guid}"
676
676
 
677
677
  resp = await self._async_make_request("GET", url, body)
678
- return resp.json()
678
+ return resp.json().get('element',NO_ELEMENTS_FOUND)
679
679
 
680
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.
pyegeria/shared_state.py CHANGED
@@ -25,6 +25,9 @@ def update_element_dictionary(key, value):
25
25
  value (dict): The value to associate with the key
26
26
  """
27
27
  global element_dictionary
28
+ if (key is None or value is None):
29
+ print(f"===>ERROR Key is {key} and value is {value}")
30
+ return
28
31
  element_dictionary[key] = value
29
32
 
30
33
  def clear_element_dictionary():
@@ -32,4 +35,33 @@ def clear_element_dictionary():
32
35
  Clear the shared element dictionary.
33
36
  """
34
37
  global element_dictionary
35
- element_dictionary.clear()
38
+ element_dictionary.clear()
39
+
40
+ def is_present(value: str) -> bool:
41
+ global element_dictionary
42
+ present = value in element_dictionary.keys() or any(value in inner_dict.values() for inner_dict in element_dictionary.values())
43
+ return present
44
+
45
+ def find_key_with_value( value: str) -> str | None:
46
+ """
47
+ Finds the top-level key whose nested dictionary contains the given value.
48
+
49
+ Args:
50
+ data (dict): A dictionary where keys map to nested dictionaries.
51
+ value (str): The value to search for.
52
+
53
+ Returns:
54
+ str | None: The top-level key that contains the value, or None if not found.
55
+ """
56
+ global element_dictionary
57
+ # Check if the value matches a top-level key
58
+ if value in element_dictionary.keys():
59
+ return value
60
+
61
+ # Check if the value exists in any of the nested dictionaries
62
+ for key, inner_dict in element_dictionary.items():
63
+ if value in inner_dict.values():
64
+ return key
65
+
66
+ return None # If value not found
67
+
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pyegeria
3
- Version: 5.3.7.8
3
+ Version: 5.3.8.0
4
4
  Summary: A python client for Egeria
5
5
  License: Apache 2.0
6
6
  Keywords: egeria,metadata,governance
@@ -1,6 +1,6 @@
1
1
  pyegeria/README.md,sha256=PwX5OC7-YSZUCIsoyHh1O-WBM2hE84sm3Bd4O353NOk,1464
2
2
  pyegeria/__init__.py,sha256=_ajfbBLCVW8RnSWYK4tGXLqjHEdnzCW2q815GENuFS0,30383
3
- pyegeria/_client.py,sha256=IAX6y11zqX3Dz1XwbYXQqHNdi7HmKQClI0Li5cjUSUA,31884
3
+ pyegeria/_client.py,sha256=VluySexJdeP3iaAnm6xsZ8kR7Ff2z5Fn_mHTGN8eLP8,31949
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
@@ -11,13 +11,12 @@ pyegeria/classification_manager_omvs.py,sha256=n55-62Mby-_5pxPGaz3nkjM9NWlY4PzSl
11
11
  pyegeria/collection_manager_omvs.py,sha256=xNuF3Ki6Rg-TehdbFGS8exSOUXpkQ3X63__OdXuCkc8,101746
12
12
  pyegeria/commands/README.md,sha256=hJdOWhZ5eCfwTkY4Tx6De6Y1XVo7cbaddQEvjqppvls,2036
13
13
  pyegeria/commands/__init__.py,sha256=R2o66ctVicTZ8B5VSPtc7EDRKNiNclzFbYX0o2Zg2dQ,1120
14
- pyegeria/commands/cat/Dr-Egeria_md-orig.py,sha256=3SCibPi_wq-znp8qeWRJLDYEh4SkAmQaWO5biWeXK2E,7665
14
+ pyegeria/commands/cat/Dr-Egeria_md-orig.py,sha256=fwhDZ36MAaiyvlBALX68HmHUJNgOWLMNVUgcyjs-yGM,7667
15
15
  pyegeria/commands/cat/README.md,sha256=-aaAnIT2fcfU63vajgB-RzQk4l4yFdhkyVfSaTPiqRY,967
16
16
  pyegeria/commands/cat/__init__.py,sha256=5OCy4m_yZsnSxdy_gvkCyP_OkjvuWKimqUGHYCJc_qA,450
17
17
  pyegeria/commands/cat/dr_egeria_inbox/glossary_creation_experiment.ipynb,sha256=dbzNu90fCKNohOWVSRBOB1GLyd95x8Qw51I5AkaPtso,11552
18
- pyegeria/commands/cat/dr_egeria_inbox/glossary_exp.md,sha256=KsUeTzDe5QkrTmIfIAXR74qZ29oSfRW-NAEn0RYIRqM,2534
19
18
  pyegeria/commands/cat/dr_egeria_jupyter.py,sha256=U-3m9BMoCXj2fvuawr3PTc2HQWAXThqQ3sIXjyCWv6s,5912
20
- pyegeria/commands/cat/dr_egeria_md.py,sha256=-WCnNL3_1hjsYgVy5Z3eixg7MED7O1K0ldfkX7tFpWQ,10378
19
+ pyegeria/commands/cat/dr_egeria_md.py,sha256=X4lwgFwYgfDz8TX0qwW6XL9D-ZHIGLPL93dBKZSIsWc,10411
21
20
  pyegeria/commands/cat/exp_list_glossaries.py,sha256=dC6Bnfm3YSMTKPP146qeslIFRiZnGu5b7iDYE07p4iU,5817
22
21
  pyegeria/commands/cat/get_asset_graph.py,sha256=xnXJfpDTVH1TJ2TwE3dtjaXU36Di6-N6JAyhothzz2o,12461
23
22
  pyegeria/commands/cat/get_collection.py,sha256=kXPcP8u-SMWfrVyyBhNoxG8mcgB7EV_5i9N9w_IBU7o,5379
@@ -41,12 +40,12 @@ pyegeria/commands/cat/list_terms.py,sha256=GwhbQeesYMCXOx3o4Hsom21wtC2nzmbpjhpwR
41
40
  pyegeria/commands/cat/list_todos.py,sha256=NitCw0uyVVjmN1hxb1W-I4FbOsa8wQxW2ICyOElHyc8,6556
42
41
  pyegeria/commands/cat/list_user_ids.py,sha256=X5Q-YNEp38saPYDuy9VwdQC5Qpa4HyC3WvAdbyp_P6M,5108
43
42
  pyegeria/commands/cli/__init__.py,sha256=hpTVSMP2gnPRhcAZPdeUEsQ-eaDySlXlk239dNWYmng,292
44
- pyegeria/commands/cli/egeria.py,sha256=_Z__gugx11bpwyWU6Uiacw_0r0q5o4mbAZ-ipDozFwc,52884
45
- pyegeria/commands/cli/egeria_cat.py,sha256=C57P0qltiwNZKF9WrsetqbVB5ezKQgZwj3mo_gZ3AzA,18345
43
+ pyegeria/commands/cli/egeria.py,sha256=NgQ5SE60JOhT9RqtcDhkxMyE_euhsawZzRVDjXYTdF8,52687
44
+ pyegeria/commands/cli/egeria_cat.py,sha256=Qsfwn2QFNhz3mjIja5A_URfxPPXnwaeZu2fbH4Ld-ik,18350
46
45
  pyegeria/commands/cli/egeria_login_tui.py,sha256=W5ouG3nlN7z2Waa-wzYFS7yyoGfOrK-lNB0FMt2JdOk,9492
47
- pyegeria/commands/cli/egeria_my.py,sha256=0KTH7OIeKyp16ZeN7zK5uhadbPfAQsq38GMzJNWYG8g,6386
48
- pyegeria/commands/cli/egeria_ops.py,sha256=8W4t2jFGn22OOOtyUAapQH8yyOl1wo09CVNTojRQKvo,12817
49
- pyegeria/commands/cli/egeria_tech.py,sha256=HaTP1tzymvj4bhKl5O37JdCPTsACssqPQ-vkYeeeJXE,21140
46
+ pyegeria/commands/cli/egeria_my.py,sha256=t7spiWUtCLDpnrnp4YJ5aXEjB5pDVImCNzU5L1ZNaWY,6391
47
+ pyegeria/commands/cli/egeria_ops.py,sha256=PXBi0Zb0XEW_ujBy-KXzypi8w1U-ZeuKwkOt5ql_4KM,12609
48
+ pyegeria/commands/cli/egeria_tech.py,sha256=Yc9pmJqvIkA8TVgJ-_nRXvEhl2B06o2UJcbh71eaQVQ,21145
50
49
  pyegeria/commands/cli/ops_config.py,sha256=aYpZgC5WgbeVX81DNKS34sOqMx2pc6yqDuSO2CYRiOo,1513
51
50
  pyegeria/commands/cli/txt_custom_v2.tcss,sha256=ixkzpFyTZ5i3byFO9EmEAeJgzbEa7nZb_3iTgxNtVPk,232
52
51
  pyegeria/commands/doc/README.md,sha256=3TDtLjanw5Sn5fhw0apsYv2HS2Hd7NSdjLu3qTwwXBg,13941
@@ -169,7 +168,7 @@ pyegeria/commands/my/monitor_open_todos.py,sha256=Vi6VOcxdHe_94de_ICTHoIOA94KCcT
169
168
  pyegeria/commands/my/todo_actions.py,sha256=daio-D1dVDkAXIcz15bVogJ-nWA_bMGKrpvkK7tc3cQ,8153
170
169
  pyegeria/commands/ops/README.md,sha256=PJsSDcvMv6E6og6y-cwvxFX5lhCII0UCwgKiM1T17MQ,1595
171
170
  pyegeria/commands/ops/__init__.py,sha256=v7u-zC3gr8soVbYV0Izc2wuEcGCovO00j5v-IhLg3xs,450
172
- pyegeria/commands/ops/gov_server_actions.py,sha256=zDTiTwh8SioxwkqKf9hI2GCMrxr2jDVf8tmCNXBxwaY,5690
171
+ pyegeria/commands/ops/gov_server_actions.py,sha256=OCff2cajMbZOy_nwG6xIiIX1seiu3tLxn-uP_CPrpTM,5685
173
172
  pyegeria/commands/ops/list_archives.py,sha256=jKm_easQUjJNRkuasILvuVpQBFuyyBlBHE-L0i0FGgQ,5456
174
173
  pyegeria/commands/ops/list_catalog_targets.py,sha256=piru83lRLV7O-HZ2gYTJbZy3nHptGuBJ62QsVrYTLE0,7702
175
174
  pyegeria/commands/ops/load_archive.py,sha256=KL9bSqwqPGUPTvB9iLiQCcVH_CzGpdyjG3Mm6NIFt-k,2708
@@ -183,9 +182,9 @@ pyegeria/commands/ops/monitor_server_startup.py,sha256=UNws5paaN0VTVLkJp-8MI07oU
183
182
  pyegeria/commands/ops/monitor_server_status.py,sha256=w7uFLR6BXgPtuC4L5cp8nWsw3W1Z-5JB2nCo1N_zEF4,7144
184
183
  pyegeria/commands/ops/orig_monitor_server_list.py,sha256=EYmvygmrhNmcXORsRHtCniuZ3C9ko8CBRlH34vZRrPg,4651
185
184
  pyegeria/commands/ops/orig_monitor_server_status.py,sha256=QCRi5uxrtZvXnZGcMPvlsLHr6P9v-5m12CqqL691lvc,4033
186
- pyegeria/commands/ops/refresh_integration_daemon.py,sha256=m_zSJYEftVQg873WOpK_oi22YXTRJEX8SGlIh6YKSCk,2976
187
- pyegeria/commands/ops/restart_integration_daemon.py,sha256=it7TU7CF9KeGVacCEWprd_JK0Et1p-JMFSiOtQo6FDg,2915
188
- pyegeria/commands/ops/table_integ_daemon_status.py,sha256=BfkjdkZHt-DzHlV0ApsM3L8jP6eazmbAPjoWul_xy4k,8428
185
+ pyegeria/commands/ops/refresh_integration_daemon.py,sha256=cOgdWQV6pTajIBWNeJy7MJo32JtMxPDHcxivfT72NWc,2981
186
+ pyegeria/commands/ops/restart_integration_daemon.py,sha256=M8vb-SEIGFd4fnZcwFD1rRNYXGe-jySzFGnizB72dSI,2917
187
+ pyegeria/commands/ops/table_integ_daemon_status.py,sha256=XyHM4LzOslWFmH5q9nFa8tpZNylL9JztOavtQacnP7w,8430
189
188
  pyegeria/commands/ops/x_engine_actions.py,sha256=sjoyDJD2_0xQkE2tSlFdBxD2d9C3Nzcy9qi69dWC4Rw,2284
190
189
  pyegeria/commands/tech/README.md,sha256=nxDnfr3BCiGgW5G1VxWxiwUWJXIe5wreNuUeRyIt_hY,1343
191
190
  pyegeria/commands/tech/__init__.py,sha256=0O3kDAlDfx7ohSg_5tZt55B4B3UItgE0noROQLCIUxs,449
@@ -226,28 +225,28 @@ pyegeria/egeria_my_client.py,sha256=eOKLk2zdI6FHZnhAimfR_0yNdBjpUgD41dJZcJODcqE,
226
225
  pyegeria/egeria_tech_client.py,sha256=uycgYfCpb4jzFfaQ7I5JxbZ5PKsWdaWxLOJjbw6C2Zk,3817
227
226
  pyegeria/feedback_manager_omvs.py,sha256=0xBs0p54vmdfVYYgQ8pOanLC4fxfgTk1Z61Y6D1U7_I,152978
228
227
  pyegeria/full_omag_server_config.py,sha256=CQqLCy_3DZFvJZEOcGf50HWdFaWpiAIs6z-kKyjvpDA,47464
229
- pyegeria/glossary_browser_omvs.py,sha256=hkYa5xGV_WXTUAMLx4VjsGhnC7PkVpmVFVcwfUTKDGE,109582
230
- pyegeria/glossary_manager_omvs.py,sha256=ZJrRUwx3Z1ebbjy60_9PLYh7gAtInE94cPtsPRM7FtM,70273
228
+ pyegeria/glossary_browser_omvs.py,sha256=hOQJ1ipVfzAqS7UvHCJtKhG5MfpYNJfWk5zk_yKIgt4,109698
229
+ pyegeria/glossary_manager_omvs.py,sha256=JMgvbockir-D1Y9pKKlPg4a9qlRwWAS_7B9wBMcCPnA,66820
231
230
  pyegeria/m_test.py,sha256=M5-M2ZczsAJLXWfSeqTTADHdx6Ku-y4PbQ4M21JthAE,7778
232
231
  pyegeria/md_processing_helpers.py,sha256=sV-ciVg_xOGVGTH_CMpH2B5k3V5jzdFp_XvnQQ5xafw,2131
233
- pyegeria/md_processing_utils.py,sha256=n7PT3wsnv6eLhgnRo_1N3C-HTrHK6459FTsJ1hqgbTU,65055
232
+ pyegeria/md_processing_utils.py,sha256=KCw9XXVX2sgqz7th47FlsDJ3yapKvYaSCJlWJ8ATJJs,67988
234
233
  pyegeria/md_processing_utils_orig.py,sha256=WGoVpsV03wwgv9YwDDHZ0EO4-opN8BdoISt4ZhkYGuQ,52492
235
234
  pyegeria/mermaid_utilities.py,sha256=sQqdFUWdNpHu9d3Tk9UVe80M-5bOzses0XcFYX5FF-E,54254
236
235
  pyegeria/metadata_explorer_omvs.py,sha256=xHnZTQKbd6XwOhYia-RiIisrvZcqHi0SL1l6OCf04Gk,86911
237
236
  pyegeria/my_profile_omvs.py,sha256=d0oJYCJG7pS9BINPuGciVa00ac0jwPHNANXDCLginEc,34720
238
237
  pyegeria/platform_services.py,sha256=YEpZsGGsbSdesN8ceyFhV0OMzKG6znTZrREMTRimLps,41701
239
- pyegeria/project_manager_omvs.py,sha256=UA-HcLTJ0rAYQXv-l5xLN7hTUinBTsrbwT_MmC8lx0U,70165
238
+ pyegeria/project_manager_omvs.py,sha256=4_uT0oW8CvV1j4gi_zafhxc1i5-T7eYjeWklo8EalI8,70198
240
239
  pyegeria/registered_info.py,sha256=y0-LgDIQXpph0lEWxIOG3_HsqX_Z2iAIb3xu4Aa4B70,6344
241
240
  pyegeria/runtime_manager_omvs.py,sha256=Z5wY9ignNjil8O6yjihZftxkGoh9A4PQDcXhoIsOIT8,79698
242
241
  pyegeria/server_operations.py,sha256=5k0KVz3u8qRLwtz16zT3J86LZY3pkUrMDcps8srmq1A,16831
243
- pyegeria/shared_state.py,sha256=KqmvWAvct1o6Bte9accfAbI-qAZu-UtCUZiYi7eYYM8,907
242
+ pyegeria/shared_state.py,sha256=LmoKqGBgDBbMaYvQAP6r-vtg1_Fw4RlegKBhJiDrclU,1987
244
243
  pyegeria/solution_architect_omvs.py,sha256=x6CfPTyn1l2DFYVEFP0t_rT9uVjoFr596hBBeuVaMRg,22093
245
244
  pyegeria/template_manager_omvs.py,sha256=PfJ9dOfmBvf59DgRdZ9Dl1Kl_UYqjF-JncXVnbCqLZU,42408
246
245
  pyegeria/utils.py,sha256=GCt1C0bp0Xng1ahzbZhzV9qQwH7Dj93IaCt2dvWb-sg,5417
247
246
  pyegeria/valid_metadata_omvs.py,sha256=Xq9DqBQvBFFJzaFIRKcVZ2k4gJvSh9yeXs_j-O3vn1w,65050
248
247
  pyegeria/x_action_author_omvs.py,sha256=RcqSzahUKCtvb_3u_wyintAlc9WFkC_2v0E12TZs8lQ,6433
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,,
248
+ pyegeria-5.3.8.0.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
249
+ pyegeria-5.3.8.0.dist-info/METADATA,sha256=m-1X-9AiILczZLSPTt0QBg3cz9ffUjPpw0PSC6H6U0g,2740
250
+ pyegeria-5.3.8.0.dist-info/WHEEL,sha256=XbeZDeTWKc1w7CSIyre5aMDU_-PohRwTQceYnisIYYY,88
251
+ pyegeria-5.3.8.0.dist-info/entry_points.txt,sha256=eAvQ_vkejlF3JzMzEc5VD93ymLA_hSFV0HM8fntG-d8,6791
252
+ pyegeria-5.3.8.0.dist-info/RECORD,,
@@ -1,158 +0,0 @@
1
-
2
-
3
-
4
-
5
- # Create Glossary
6
- ## Glossary Name
7
-
8
- Egeria-Markdown
9
-
10
- ## Language
11
- English
12
-
13
- ## Description
14
-
15
- Glossary to describe the vocabulary of Freddie - an Egeria Markdown language to support the exchange of metadata in a Markdown form.
16
- Freddie allows users to input metadata using any text entry system that supports the entry of standard Markdown characters and through post-processing
17
- commands, validates the Egeria content and allows the requests to be sent to Egeria. This is an update
18
-
19
-
20
- ## Usage
21
- 1) (optional) load an example or template for the type of object from Egeria.
22
- 2) Create a new document (perhaps from the template) and edit it, adding in the content with the Freddie controlled Markdown language.
23
- 3) Process the document to validate and display it before you submit it, Validation may annotate your document with recommendations and potential issues.
24
- 4) Submit the document to Egeria using the Freddie_sings command.
25
-
26
-
27
- ## <Qualified Name>
28
-
29
- ## <GUID>
30
-
31
- ---
32
-
33
- This is some random text
34
-
35
-
36
- # Create Term
37
-
38
- ## Glossary Name
39
-
40
- Egeria-Markdown
41
-
42
- ## Term Name
43
-
44
- Command
45
-
46
- ## Summary
47
-
48
- Commands are how a user of the Freddie markdown language requests an action.
49
- ## Description
50
-
51
- Commands are how a user can request Egeria to take an action such as Create or Update an Egeria element. Freddie provides
52
- a limited (but growing) set of commands. Freddie commands align with the pyegeria 'hey-egeria' command line interface.
53
-
54
- ## Abbreviation
55
-
56
- ## Examples
57
- Create Glossary or
58
- Update Glossary or
59
- Create Term or
60
- Update Term
61
- ## Usage
62
-
63
- Commands are used in the Freddie Egeria markdown language.
64
- ## Version
65
- 0.2
66
- ## Status
67
- DRAFT
68
-
69
- ## Qualified Name
70
-
71
- ---
72
-
73
- # Create Term
74
-
75
- ## Glossary Name
76
-
77
- Egeria-Markdown
78
-
79
- ## Term Name
80
-
81
- Source
82
-
83
- ## Summary
84
-
85
- Source of the markdown content.
86
- ## Description
87
-
88
- Source of the markdown content - could be jupter or plain markdown file.
89
-
90
- ## Abbreviation
91
-
92
- ## Examples
93
-
94
- ## Usage
95
-
96
-
97
- ## Version
98
- 0.1
99
- ## Status
100
- DRAFT
101
-
102
- ## Update Description
103
-
104
- ---
105
-
106
- # Create Term
107
-
108
- ## Glossary Name
109
-
110
- Egeria-Markdown
111
-
112
- ## Term Name
113
-
114
- Directive
115
-
116
- ## Summary
117
-
118
- A directive defines how the command is to be processed.
119
-
120
- ## Description
121
-
122
- Directives are one of:
123
- * display - just display what we've found
124
- * validate - check the validity of the requested action
125
- * process - process the requested action
126
-
127
- ## Abbreviation
128
-
129
- ## Examples
130
-
131
- ## Usage
132
-
133
-
134
- ## Version
135
- 0.1
136
- ## Status
137
- DRAFT
138
-
139
- ---
140
-
141
-
142
- # Create Personal Project
143
-
144
- ## Project Name
145
-
146
- My first science experiment
147
-
148
- ## Description
149
-
150
- This is a brief description of the experiment
151
-
152
- ## Start Date
153
-
154
- 03/01/2025
155
-
156
- ## Planned End Date
157
-
158
- 04-01-2025