pyegeria 5.4.7.1__py3-none-any.whl → 5.4.7.3__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/_client_new.py +32 -3
- pyegeria/_output_formats.py +71 -0
- pyegeria/collection_manager.py +2 -2
- pyegeria/external_references.py +2 -2
- pyegeria/format_set_executor.py +1 -1
- pyegeria/glossary_manager.py +2 -2
- pyegeria/mcp_adapter.py +3 -3
- {pyegeria-5.4.7.1.dist-info → pyegeria-5.4.7.3.dist-info}/METADATA +1 -1
- {pyegeria-5.4.7.1.dist-info → pyegeria-5.4.7.3.dist-info}/RECORD +13 -13
- {pyegeria-5.4.7.1.dist-info → pyegeria-5.4.7.3.dist-info}/WHEEL +0 -0
- {pyegeria-5.4.7.1.dist-info → pyegeria-5.4.7.3.dist-info}/entry_points.txt +0 -0
- {pyegeria-5.4.7.1.dist-info → pyegeria-5.4.7.3.dist-info}/licenses/LICENSE +0 -0
- {pyegeria-5.4.7.1.dist-info → pyegeria-5.4.7.3.dist-info}/top_level.txt +0 -0
pyegeria/_client_new.py
CHANGED
@@ -156,6 +156,25 @@ class Client2:
|
|
156
156
|
self._template_request_adapter = TypeAdapter(TemplateRequestBody)
|
157
157
|
self._update_relationship_request_adapter = TypeAdapter(UpdateRelationshipRequestBody)
|
158
158
|
self._results_request_adapter = TypeAdapter(ResultsRequestBody)
|
159
|
+
try:
|
160
|
+
result = self.check_connection()
|
161
|
+
logger.info(f"client initialized, platform origin is: {result}")
|
162
|
+
except PyegeriaConnectionException as e:
|
163
|
+
raise
|
164
|
+
|
165
|
+
async def _async_check_connection(self) -> str:
|
166
|
+
"""Check if the connection is working"""
|
167
|
+
try:
|
168
|
+
response = await self.async_get_platform_origin()
|
169
|
+
return response
|
170
|
+
|
171
|
+
except PyegeriaConnectionException as e:
|
172
|
+
raise
|
173
|
+
def check_connection(self) -> str:
|
174
|
+
"""Check if the connection is working"""
|
175
|
+
loop = asyncio.get_event_loop()
|
176
|
+
response = loop.run_until_complete(self._async_check_connection())
|
177
|
+
return response
|
159
178
|
|
160
179
|
def __enter__(self):
|
161
180
|
return self
|
@@ -365,13 +384,13 @@ class Client2:
|
|
365
384
|
"""Retrieve and return the bearer token"""
|
366
385
|
return self.text_headers["Authorization"]
|
367
386
|
|
368
|
-
def
|
387
|
+
async def async_get_platform_origin(self) -> str:
|
369
388
|
"""Return the platform origin string if reachable.
|
370
|
-
|
389
|
+
|
371
390
|
Historically this method returned a boolean; tests and helpers expect the actual origin text.
|
372
391
|
"""
|
373
392
|
origin_url = f"{self.platform_url}/open-metadata/platform-services/users/{self.user_id}/server-platform/origin"
|
374
|
-
response = self.
|
393
|
+
response = await self._async_make_request("GET", origin_url, is_json=False)
|
375
394
|
if response.status_code == 200:
|
376
395
|
text = response.text.strip()
|
377
396
|
logger.success(f"Got response from {origin_url}\n Response: {text}")
|
@@ -380,6 +399,16 @@ class Client2:
|
|
380
399
|
logger.info(f"Got response from {origin_url}\n status_code: {response.status_code}")
|
381
400
|
return ""
|
382
401
|
|
402
|
+
|
403
|
+
def get_platform_origin(self) -> str:
|
404
|
+
"""Return the platform origin string if reachable.
|
405
|
+
|
406
|
+
Historically this method returned a boolean; tests and helpers expect the actual origin text.
|
407
|
+
"""
|
408
|
+
loop = asyncio.get_event_loop()
|
409
|
+
response = loop.run_until_complete(self.async_get_platform_origin())
|
410
|
+
return response
|
411
|
+
|
383
412
|
# @logger.catch
|
384
413
|
def make_request(
|
385
414
|
self,
|
pyegeria/_output_formats.py
CHANGED
@@ -121,6 +121,7 @@ COMMON_COLUMNS = [
|
|
121
121
|
Column(name='Category', key='category'),
|
122
122
|
Column(name='Description', key='description', format=True),
|
123
123
|
Column(name='Status', key='status'),
|
124
|
+
Column(name='Type Name', key='type_name')
|
124
125
|
]
|
125
126
|
|
126
127
|
|
@@ -560,6 +561,29 @@ base_output_format_sets = FormatSetDict({
|
|
560
561
|
spec_params={"metadata_element_types": ["DigitalProductCatalog"]},
|
561
562
|
),
|
562
563
|
),
|
564
|
+
"Digital-Product-Catalog-MyE": FormatSet(
|
565
|
+
target_type="DigitalProductCatalog",
|
566
|
+
heading="Catalogs for Digital Products",
|
567
|
+
description="Attributes generic to all Digital Product Catalogs..",
|
568
|
+
aliases=[],
|
569
|
+
annotations={},
|
570
|
+
formats=[
|
571
|
+
Format(
|
572
|
+
types=["DICT", "TABLE", "LIST", "MD", "FORM","REPORT"],
|
573
|
+
columns=COMMON_COLUMNS + [
|
574
|
+
Column(name="Containing Members", key='collection_members'),
|
575
|
+
Column(name="Member Of", key='member_of_collections')
|
576
|
+
]
|
577
|
+
),
|
578
|
+
|
579
|
+
],
|
580
|
+
action=ActionParameter(
|
581
|
+
function="CollectionManager.find_collections",
|
582
|
+
required_params=["search_string"],
|
583
|
+
optional_params=OPTIONAL_PARAMS,
|
584
|
+
spec_params={"metadata_element_types": ["DigitalProductCatalog"]},
|
585
|
+
),
|
586
|
+
),
|
563
587
|
|
564
588
|
"Digital-Products": FormatSet(
|
565
589
|
target_type="DigitalProduct",
|
@@ -617,6 +641,53 @@ base_output_format_sets = FormatSetDict({
|
|
617
641
|
spec_params={},
|
618
642
|
)
|
619
643
|
),
|
644
|
+
"Digital-Products-MyE": FormatSet(
|
645
|
+
target_type="DigitalProduct",
|
646
|
+
heading="Digital Product Information",
|
647
|
+
description="Attributes useful to Digital Products.",
|
648
|
+
aliases=[],
|
649
|
+
annotations={},
|
650
|
+
formats=[
|
651
|
+
Format(
|
652
|
+
types=["FORM", "DICT", "TABLE", "LIST", "MD"],
|
653
|
+
columns=COMMON_COLUMNS + [
|
654
|
+
Column(name="Status", key='status'),
|
655
|
+
Column(name='Product Name', key='product_name'),
|
656
|
+
Column(name='Members', key='members', format=True),
|
657
|
+
Column(name='Product Manager', key='assigned_actors'),
|
658
|
+
]),
|
659
|
+
Format(
|
660
|
+
types=["REPORT", "HTML"],
|
661
|
+
columns=COMMON_COLUMNS + [
|
662
|
+
Column(name="Status", key='status'),
|
663
|
+
Column(name='Product Name', key='product_name'),
|
664
|
+
Column(name='Identifier', key='identifier'),
|
665
|
+
Column(name='Maturity', key='maturity'),
|
666
|
+
Column(name='Service Life', key='service_life'),
|
667
|
+
Column(name='Next Version', key='next_version'),
|
668
|
+
Column(name='Withdraw Date', key='withdraw_date'),
|
669
|
+
Column(name='Members', key='members', format=True),
|
670
|
+
Column(name='Uses Products', key='uses_digital_products'),
|
671
|
+
Column(name='Used by Products', key='used_by_digital_products'),
|
672
|
+
Column(name='Product Manager', key='assigned_actors'),
|
673
|
+
Column(name='License', key='governed_by'),
|
674
|
+
Column(name='Solution Blueprint', key='solution_designs'),
|
675
|
+
Column(name="Mermaid", key="mermaid")
|
676
|
+
],
|
677
|
+
)
|
678
|
+
],
|
679
|
+
action=ActionParameter(
|
680
|
+
function="CollectionManager.find_collections",
|
681
|
+
required_params=["search_string"],
|
682
|
+
optional_params=OPTIONAL_PARAMS,
|
683
|
+
spec_params={"metadata_element_types": ["DigitalProduct"]},
|
684
|
+
),
|
685
|
+
get_additional_props=ActionParameter(
|
686
|
+
function="CollectionManager._extract_digital_product_properties",
|
687
|
+
required_params=[],
|
688
|
+
spec_params={},
|
689
|
+
)
|
690
|
+
),
|
620
691
|
|
621
692
|
"Agreements": FormatSet(
|
622
693
|
target_type="Agreement",
|
pyegeria/collection_manager.py
CHANGED
@@ -129,8 +129,8 @@ class CollectionManager(Client2):
|
|
129
129
|
|
130
130
|
|
131
131
|
Client2.__init__(self, view_server, platform_url, user_id, user_pwd, token)
|
132
|
-
result = self.get_platform_origin()
|
133
|
-
logger.info(f"CollectionManager initialized, platform origin is: {result}")
|
132
|
+
# result = self.get_platform_origin()
|
133
|
+
# logger.info(f"CollectionManager initialized, platform origin is: {result}")
|
134
134
|
self.collection_command_root: str = (
|
135
135
|
f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/collection-manager/collections")
|
136
136
|
#
|
pyegeria/external_references.py
CHANGED
@@ -72,8 +72,8 @@ class ExternalReferences(Client2):
|
|
72
72
|
self.user_pwd = user_pwd
|
73
73
|
|
74
74
|
Client2.__init__(self, view_server, platform_url, user_id, user_pwd, token)
|
75
|
-
result = self.get_platform_origin()
|
76
|
-
logger.info(f"ExternalReferences initialized, platform origin is: {result}")
|
75
|
+
# result = self.get_platform_origin()
|
76
|
+
# logger.info(f"ExternalReferences initialized, platform origin is: {result}")
|
77
77
|
self.command_root: str = (
|
78
78
|
f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/external-references")
|
79
79
|
|
pyegeria/format_set_executor.py
CHANGED
pyegeria/glossary_manager.py
CHANGED
@@ -95,8 +95,8 @@ class GlossaryManager(CollectionManager):
|
|
95
95
|
|
96
96
|
|
97
97
|
CollectionManager.__init__(self, view_server, platform_url, user_id, user_pwd, token)
|
98
|
-
result = self.get_platform_origin()
|
99
|
-
logger.info(f"GlossaryManager initialized, platform origin is: {result}")
|
98
|
+
# result = self.get_platform_origin()
|
99
|
+
# logger.info(f"GlossaryManager initialized, platform origin is: {result}")
|
100
100
|
self.glossary_command_root = f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/glossary-manager"
|
101
101
|
#
|
102
102
|
# Get Valid Values for Enumerations
|
pyegeria/mcp_adapter.py
CHANGED
@@ -20,7 +20,7 @@ from pyegeria._output_formats import (
|
|
20
20
|
select_output_format_set,
|
21
21
|
)
|
22
22
|
from pyegeria.egeria_tech_client import EgeriaTech
|
23
|
-
from pyegeria.format_set_executor import
|
23
|
+
from pyegeria.format_set_executor import exec_format_set, _async_run_report
|
24
24
|
|
25
25
|
|
26
26
|
def list_reports() -> dict:
|
@@ -62,7 +62,7 @@ def _execute_egeria_call_blocking(
|
|
62
62
|
from pyegeria.config import settings as _settings
|
63
63
|
|
64
64
|
|
65
|
-
return
|
65
|
+
return exec_format_set(
|
66
66
|
format_set_name=report,
|
67
67
|
output_format="DICT",
|
68
68
|
params=params or {},
|
@@ -97,7 +97,7 @@ def run_report(
|
|
97
97
|
# Lazy import of settings to avoid circulars when optional args are None
|
98
98
|
from pyegeria.config import settings as _settings
|
99
99
|
logger.info(f"Format set: {report}\nparams: {json.dumps(params)}\nview_server: {view_server}\nview_url: {view_url}\nuser: {user}\nuser_pass: {user_pass}")
|
100
|
-
return
|
100
|
+
return run_format_set(
|
101
101
|
format_set_name=report,
|
102
102
|
output_format="DICT",
|
103
103
|
params=params or {},
|
@@ -118,18 +118,18 @@ md_processing/md_processing_utils/md_processing_constants.py,sha256=_j8FSsB1mZ2S
|
|
118
118
|
md_processing/md_processing_utils/message_constants.py,sha256=UBf18obM83umM6zplR7ychre4xLRbBnTzidHDZ2gNvM,548
|
119
119
|
pyegeria/__init__.py,sha256=hgrGk4lBno1rgKRBKWAcljb2wGSHAKhmtu8vbESwUZM,11955
|
120
120
|
pyegeria/_client.py,sha256=hJHn5pD8sbelP_M9dK-M5Z2CYqpRXzXfg1UCgAdQ6dQ,33416
|
121
|
-
pyegeria/_client_new.py,sha256=
|
121
|
+
pyegeria/_client_new.py,sha256=F-TKZa6pQGOkJl1lpt_Z7G_XLRwZBaEeAJ2ffUKePSc,70855
|
122
122
|
pyegeria/_deprecated_gov_engine.py,sha256=dWNcwVsE5__dF2u4QiIyQrssozzzOjBbLld8MdpmVCQ,17264
|
123
123
|
pyegeria/_exceptions.py,sha256=1SrnV194V4_YJNnNAU0myTHQ3dhLn4GF2B2gZcj1u90,18153
|
124
124
|
pyegeria/_exceptions_new.py,sha256=srmrlqoWy7VvOJOhPcYFKW32MCIovgEg5J7PrYDxzQA,19706
|
125
125
|
pyegeria/_globals.py,sha256=qSU5hM4uuJZPp-YapEEKxfcdgH9hauc6R7gRkELLroY,1132
|
126
126
|
pyegeria/_output_format_models.py,sha256=p9fTYaIa5KyTMIR4-JAbE9g66_gGMPTnUqjIq20Zr1o,14494
|
127
|
-
pyegeria/_output_formats.py,sha256=
|
127
|
+
pyegeria/_output_formats.py,sha256=sXZrriZS8Y96mXVIwTdzZI8qu2-eGVxsbnxXbi4WmZw,184306
|
128
128
|
pyegeria/_validators.py,sha256=pNxND0dN2qvyuGE52N74l1Ezfrh2p9Hao2ziR_t1ENI,7425
|
129
129
|
pyegeria/asset_catalog_omvs.py,sha256=P6FceMP0FgakGSOt3ePxpEbsF7nnypzo1aQahjdL_94,29021
|
130
130
|
pyegeria/automated_curation.py,sha256=wmnfpDcdg4eTtYuRHTCZQe49GxLCBiBBQsKwWVnlzak,142660
|
131
131
|
pyegeria/classification_manager_omvs.py,sha256=eodP8Fn7zi78unsjk0XNW7lnxI7R0Fb7_SLI-HA39PQ,187249
|
132
|
-
pyegeria/collection_manager.py,sha256=
|
132
|
+
pyegeria/collection_manager.py,sha256=mwG1KAGOkoDGAUUbA22yWfMpAJdx9D7uXjudU3MZdcY,238698
|
133
133
|
pyegeria/collection_models.py,sha256=d3DdWONqDdAeuUQgussiCNfvhKIDFpaI35cdW_Tv4_0,5315
|
134
134
|
pyegeria/config.py,sha256=N-qHq74GN29Mwfp8MbXvj7uEsKCIXotL7MDwFcj3nIU,29380
|
135
135
|
pyegeria/core_omag_server_config.py,sha256=pNQpocICkZx8sRsTw5DPUe-TFyxlIo1U88qqgci_f7I,97764
|
@@ -140,15 +140,15 @@ pyegeria/egeria_client.py,sha256=N_CvaUgb8tQtRLsy8dfLNJ2lPPiCrfW-AFiLBxqIlyI,610
|
|
140
140
|
pyegeria/egeria_config_client.py,sha256=YkgndiZ6-CfhwVeBW9ErS7l95SIrd0G9--H8kAfeBJY,2479
|
141
141
|
pyegeria/egeria_my_client.py,sha256=3dSBUlrivzih75hodNHe-2BM9pGB8AQVLru-_NbhYNE,3186
|
142
142
|
pyegeria/egeria_tech_client.py,sha256=8Apr5YEFL2qgn-QTv9YWTI-23rGI94NiUp4418EiZ4k,4707
|
143
|
-
pyegeria/external_references.py,sha256=
|
143
|
+
pyegeria/external_references.py,sha256=WQycWk68nvcQ9WDRum9hI61QbuFCG3iehLhB5eWnBd0,74759
|
144
144
|
pyegeria/feedback_manager_omvs.py,sha256=0xBs0p54vmdfVYYgQ8pOanLC4fxfgTk1Z61Y6D1U7_I,152978
|
145
|
-
pyegeria/format_set_executor.py,sha256=
|
145
|
+
pyegeria/format_set_executor.py,sha256=KkOqCuZwk7UeMQUPg_x8UDVmVKYdz5vaQZ8KjZZxDMQ,11318
|
146
146
|
pyegeria/full_omag_server_config.py,sha256=CQqLCy_3DZFvJZEOcGf50HWdFaWpiAIs6z-kKyjvpDA,47464
|
147
|
-
pyegeria/glossary_manager.py,sha256=
|
147
|
+
pyegeria/glossary_manager.py,sha256=0oqD09iP-7ZsibJZEMDwPHqjxqHQW4dlikDuBzwv9qQ,106790
|
148
148
|
pyegeria/governance_officer.py,sha256=OYEewhoe3HBcxTR6kGdKNkwLT4gkQDRGKfFIsVlD5oI,109203
|
149
149
|
pyegeria/load_config.py,sha256=XDwPAHB3MvGRuoP8kg1lJJAI4BgMWZ3TYxfxYROgJj4,1188
|
150
150
|
pyegeria/logging_configuration.py,sha256=BxTQRN-7OOdk5t1f1xSn8gKU8iT-MfWEgbn6cYWrRsY,7674
|
151
|
-
pyegeria/mcp_adapter.py,sha256=
|
151
|
+
pyegeria/mcp_adapter.py,sha256=3wz-DNV4oYPeBF_6VxvNkL-ub4pwsUs49VB9L76QPwU,4970
|
152
152
|
pyegeria/mcp_server.py,sha256=UsgpV8Nq09S2nzEGTIVvJizAPUeNdARZjIuLwrTlVOE,8179
|
153
153
|
pyegeria/md_processing_helpers.py,sha256=xlQuK5eP_PJqUdy4BScQ97NyBD95jMS3EUg0wK5CsZo,2137
|
154
154
|
pyegeria/md_processing_utils.py,sha256=KRESCqAYjCgHRAdhHH49lLDDhaq740CUlqTG0bN-6Oo,99119
|
@@ -169,9 +169,9 @@ pyegeria/template_manager_omvs.py,sha256=chBljs1vy5wr9DRAtbvIt4Cob_7HxGfxLkCNlDT
|
|
169
169
|
pyegeria/utils.py,sha256=xOTxk9PH8ZGZmgIwz_a6rczTVLADLEjucr10ZJTUnY4,9272
|
170
170
|
pyegeria/valid_metadata_omvs.py,sha256=Xq9DqBQvBFFJzaFIRKcVZ2k4gJvSh9yeXs_j-O3vn1w,65050
|
171
171
|
pyegeria/x_action_author_omvs.py,sha256=XyRsUgN-xnWR-cJayzo5RtY4Xv1uBDML4pwaKHrwC1w,6430
|
172
|
-
pyegeria-5.4.7.
|
173
|
-
pyegeria-5.4.7.
|
174
|
-
pyegeria-5.4.7.
|
175
|
-
pyegeria-5.4.7.
|
176
|
-
pyegeria-5.4.7.
|
177
|
-
pyegeria-5.4.7.
|
172
|
+
pyegeria-5.4.7.3.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
173
|
+
pyegeria-5.4.7.3.dist-info/METADATA,sha256=ugQjung_oI1JtNP0vSrLFkVogfN912Fsu4TmdhYduuo,5898
|
174
|
+
pyegeria-5.4.7.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
175
|
+
pyegeria-5.4.7.3.dist-info/entry_points.txt,sha256=Ig9cZyl-nq_RohLvahgWXzZbcpHzLS3Zdc1A8qvdPG0,6595
|
176
|
+
pyegeria-5.4.7.3.dist-info/top_level.txt,sha256=48Mt-O3p8yO7jiEv6-Y9bUsryqJn9BQsiyV0BqSn8tk,32
|
177
|
+
pyegeria-5.4.7.3.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|