pyegeria 5.3.9.9.3__py3-none-any.whl → 5.5.3.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.
Potentially problematic release.
This version of pyegeria might be problematic. Click here for more details.
- commands/__init__.py +24 -0
- commands/cat/Dr-Egeria_md-orig.py +2 -2
- commands/cat/__init__.py +1 -17
- commands/cat/collection_actions.py +197 -0
- commands/cat/dr_egeria_command_help.py +372 -0
- commands/cat/dr_egeria_jupyter.py +7 -7
- commands/cat/dr_egeria_md.py +27 -182
- commands/cat/exp_list_glossaries.py +11 -14
- commands/cat/get_asset_graph.py +37 -267
- commands/cat/{get_collection.py → get_collection_tree.py} +10 -18
- commands/cat/get_project_dependencies.py +14 -14
- commands/cat/get_project_structure.py +15 -14
- commands/cat/get_tech_type_elements.py +16 -116
- commands/cat/glossary_actions.py +145 -298
- commands/cat/list_assets.py +3 -11
- commands/cat/list_cert_types.py +17 -63
- commands/cat/list_collections.py +46 -138
- commands/cat/list_deployed_catalogs.py +15 -27
- commands/cat/list_deployed_database_schemas.py +27 -43
- commands/cat/list_deployed_databases.py +16 -31
- commands/cat/list_deployed_servers.py +35 -54
- commands/cat/list_glossaries.py +18 -17
- commands/cat/list_projects.py +10 -12
- commands/cat/list_tech_type_elements.py +21 -37
- commands/cat/list_tech_types.py +13 -25
- commands/cat/list_terms.py +38 -79
- commands/cat/list_todos.py +4 -11
- commands/cat/list_user_ids.py +3 -10
- commands/cat/my_reports.py +559 -0
- commands/cat/run_report.py +394 -0
- commands/cat/run_report_orig.py +528 -0
- commands/cli/egeria.py +222 -247
- commands/cli/egeria_cat.py +68 -81
- commands/cli/egeria_my.py +13 -0
- commands/cli/egeria_ops.py +69 -74
- commands/cli/egeria_tech.py +17 -93
- commands/cli/ops_config.py +3 -6
- commands/{cat/list_categories.py → deprecated/list_data_designer.py} +53 -64
- commands/{cat/list_data_structures.py → deprecated/list_data_structures_full.py} +3 -6
- commands/deprecated/old_get_asset_graph.py +315 -0
- commands/my/__init__.py +0 -2
- commands/my/list_my_profile.py +27 -34
- commands/my/list_my_roles.py +1 -7
- commands/my/monitor_my_todos.py +1 -7
- commands/my/monitor_open_todos.py +6 -7
- commands/my/todo_actions.py +4 -5
- commands/ops/__init__.py +0 -2
- commands/ops/gov_server_actions.py +17 -21
- commands/ops/list_archives.py +17 -38
- commands/ops/list_catalog_targets.py +33 -40
- commands/ops/load_archive.py +35 -26
- commands/ops/{monitor_engine_activity_c.py → monitor_active_engine_activity.py} +51 -82
- commands/ops/{monitor_integ_daemon_status.py → monitor_daemon_status.py} +35 -55
- commands/ops/monitor_engine_activity.py +79 -77
- commands/ops/{monitor_gov_eng_status.py → monitor_engine_status.py} +10 -7
- commands/ops/monitor_platform_status.py +38 -50
- commands/ops/monitor_server_startup.py +6 -11
- commands/ops/monitor_server_status.py +7 -11
- commands/ops/orig_monitor_server_list.py +8 -8
- commands/ops/orig_monitor_server_status.py +1 -5
- commands/ops/refresh_integration_daemon.py +5 -5
- commands/ops/restart_integration_daemon.py +5 -5
- commands/ops/table_integ_daemon_status.py +6 -6
- commands/ops/x_engine_actions.py +7 -7
- commands/tech/__init__.py +0 -2
- commands/tech/{generic_actions.py → element_actions.py} +6 -11
- commands/tech/get_element_info.py +20 -29
- commands/tech/get_guid_info.py +23 -42
- commands/tech/get_tech_details.py +20 -35
- commands/tech/get_tech_type_template.py +28 -39
- commands/tech/list_all_om_type_elements.py +24 -30
- commands/tech/list_all_om_type_elements_x.py +22 -28
- commands/tech/list_all_related_elements.py +19 -28
- commands/tech/list_anchored_elements.py +22 -30
- commands/tech/list_asset_types.py +19 -24
- commands/tech/list_elements_by_classification_by_property_value.py +26 -32
- commands/tech/list_elements_by_property_value.py +19 -25
- commands/tech/list_elements_by_property_value_x.py +20 -28
- commands/tech/list_elements_for_classification.py +28 -41
- commands/tech/list_gov_action_processes.py +16 -27
- commands/tech/list_information_supply_chains.py +22 -30
- commands/tech/list_registered_services.py +14 -26
- commands/tech/list_related_elements_with_prop_value.py +15 -25
- commands/tech/list_related_specification.py +1 -4
- commands/tech/list_relationship_types.py +15 -25
- commands/tech/list_relationships.py +20 -36
- commands/tech/list_solution_blueprints.py +28 -33
- commands/tech/list_solution_components.py +23 -29
- commands/tech/list_solution_roles.py +21 -32
- commands/tech/list_tech_templates.py +51 -54
- commands/tech/list_valid_metadata_values.py +5 -9
- commands/tech/table_tech_templates.py +2 -6
- commands/tech/x_list_related_elements.py +1 -4
- examples/GeoSpatial Products Example.py +524 -0
- examples/Jupyter Notebooks/P-egeria-server-config.ipynb +2137 -0
- examples/Jupyter Notebooks/README.md +2 -0
- examples/Jupyter Notebooks/common/P-environment-check.ipynb +115 -0
- examples/Jupyter Notebooks/common/__init__.py +14 -0
- examples/Jupyter Notebooks/common/common-functions.ipynb +4694 -0
- examples/Jupyter Notebooks/common/environment-check.ipynb +52 -0
- examples/Jupyter Notebooks/common/globals.ipynb +184 -0
- examples/Jupyter Notebooks/common/globals.py +154 -0
- examples/Jupyter Notebooks/common/orig_globals.py +152 -0
- examples/format_sets/all_format_sets.json +910 -0
- examples/format_sets/custom_format_sets.json +268 -0
- examples/format_sets/subset_format_sets.json +187 -0
- examples/format_sets_save_load_example.py +291 -0
- examples/jacquard_data_sets.py +129 -0
- examples/output_formats_example.py +193 -0
- examples/test_jacquard_data_sets.py +54 -0
- examples/test_jacquard_data_sets_scenarios.py +94 -0
- md_processing/__init__.py +90 -0
- md_processing/command_dispatcher.py +33 -0
- md_processing/command_mapping.py +221 -0
- md_processing/data/commands/commands_data_designer.json +537 -0
- md_processing/data/commands/commands_external_reference.json +733 -0
- md_processing/data/commands/commands_feedback.json +155 -0
- md_processing/data/commands/commands_general.json +204 -0
- md_processing/data/commands/commands_glossary.json +218 -0
- md_processing/data/commands/commands_governance.json +3678 -0
- md_processing/data/commands/commands_product_manager.json +865 -0
- md_processing/data/commands/commands_project.json +642 -0
- md_processing/data/commands/commands_solution_architect.json +366 -0
- md_processing/data/commands.json +17568 -0
- md_processing/data/commands_working.json +30641 -0
- md_processing/data/gened_report_specs.py +6584 -0
- md_processing/data/generated_format_sets.json +6533 -0
- md_processing/data/generated_format_sets_old.json +4137 -0
- md_processing/data/generated_format_sets_old.py +45 -0
- md_processing/dr_egeria.py +182 -0
- md_processing/md_commands/__init__.py +3 -0
- md_processing/md_commands/data_designer_commands.py +1276 -0
- md_processing/md_commands/ext_ref_commands.py +530 -0
- md_processing/md_commands/feedback_commands.py +726 -0
- md_processing/md_commands/glossary_commands.py +684 -0
- md_processing/md_commands/governance_officer_commands.py +600 -0
- md_processing/md_commands/product_manager_commands.py +1266 -0
- md_processing/md_commands/project_commands.py +383 -0
- md_processing/md_commands/solution_architect_commands.py +1184 -0
- md_processing/md_commands/view_commands.py +295 -0
- md_processing/md_processing_utils/__init__.py +4 -0
- md_processing/md_processing_utils/common_md_proc_utils.py +1249 -0
- md_processing/md_processing_utils/common_md_utils.py +578 -0
- md_processing/md_processing_utils/determine_width.py +103 -0
- md_processing/md_processing_utils/extraction_utils.py +547 -0
- md_processing/md_processing_utils/gen_report_specs.py +643 -0
- md_processing/md_processing_utils/generate_dr_help.py +193 -0
- md_processing/md_processing_utils/generate_md_cmd_templates.py +144 -0
- md_processing/md_processing_utils/generate_md_templates.py +83 -0
- md_processing/md_processing_utils/md_processing_constants.py +1228 -0
- md_processing/md_processing_utils/message_constants.py +19 -0
- pyegeria/__init__.py +201 -443
- pyegeria/core/__init__.py +40 -0
- pyegeria/core/_base_platform_client.py +574 -0
- pyegeria/core/_base_server_client.py +573 -0
- pyegeria/core/_exceptions.py +457 -0
- pyegeria/core/_globals.py +60 -0
- pyegeria/core/_server_client.py +6073 -0
- pyegeria/core/_validators.py +257 -0
- pyegeria/core/config.py +654 -0
- pyegeria/{create_tech_guid_lists.py → core/create_tech_guid_lists.py} +0 -1
- pyegeria/core/load_config.py +37 -0
- pyegeria/core/logging_configuration.py +207 -0
- pyegeria/core/mcp_adapter.py +144 -0
- pyegeria/core/mcp_server.py +212 -0
- pyegeria/core/utils.py +405 -0
- pyegeria/deprecated/__init__.py +0 -0
- pyegeria/{_client.py → deprecated/_client.py} +62 -24
- pyegeria/{_deprecated_gov_engine.py → deprecated/_deprecated_gov_engine.py} +16 -16
- pyegeria/{classification_manager_omvs.py → deprecated/classification_manager_omvs.py} +1988 -1878
- pyegeria/deprecated/output_formatter_with_machine_keys.py +1127 -0
- pyegeria/{runtime_manager_omvs.py → deprecated/runtime_manager_omvs.py} +216 -229
- pyegeria/{valid_metadata_omvs.py → deprecated/valid_metadata_omvs.py} +93 -93
- pyegeria/{x_action_author_omvs.py → deprecated/x_action_author_omvs.py} +2 -3
- pyegeria/egeria_cat_client.py +25 -51
- pyegeria/egeria_client.py +140 -98
- pyegeria/egeria_config_client.py +48 -24
- pyegeria/egeria_tech_client.py +170 -83
- pyegeria/models/__init__.py +150 -0
- pyegeria/models/collection_models.py +168 -0
- pyegeria/models/models.py +654 -0
- pyegeria/omvs/__init__.py +84 -0
- pyegeria/omvs/action_author.py +342 -0
- pyegeria/omvs/actor_manager.py +5980 -0
- pyegeria/omvs/asset_catalog.py +842 -0
- pyegeria/omvs/asset_maker.py +2736 -0
- pyegeria/omvs/automated_curation.py +4403 -0
- pyegeria/omvs/classification_manager.py +11213 -0
- pyegeria/omvs/collection_manager.py +5780 -0
- pyegeria/omvs/community_matters_omvs.py +468 -0
- pyegeria/{core_omag_server_config.py → omvs/core_omag_server_config.py} +157 -157
- pyegeria/{data_designer_omvs.py → omvs/data_designer.py} +1991 -1691
- pyegeria/omvs/data_discovery.py +869 -0
- pyegeria/omvs/data_engineer.py +372 -0
- pyegeria/omvs/digital_business.py +1133 -0
- pyegeria/omvs/external_links.py +1752 -0
- pyegeria/omvs/feedback_manager.py +834 -0
- pyegeria/{full_omag_server_config.py → omvs/full_omag_server_config.py} +73 -69
- pyegeria/omvs/glossary_manager.py +3231 -0
- pyegeria/omvs/governance_officer.py +3009 -0
- pyegeria/omvs/lineage_linker.py +314 -0
- pyegeria/omvs/location_arena.py +1525 -0
- pyegeria/omvs/metadata_expert.py +668 -0
- pyegeria/omvs/metadata_explorer_omvs.py +2943 -0
- pyegeria/omvs/my_profile.py +1042 -0
- pyegeria/omvs/notification_manager.py +358 -0
- pyegeria/omvs/people_organizer.py +394 -0
- pyegeria/{platform_services.py → omvs/platform_services.py} +113 -193
- pyegeria/omvs/product_manager.py +1825 -0
- pyegeria/omvs/project_manager.py +1907 -0
- pyegeria/omvs/reference_data.py +1140 -0
- pyegeria/omvs/registered_info.py +334 -0
- pyegeria/omvs/runtime_manager.py +2817 -0
- pyegeria/omvs/schema_maker.py +446 -0
- pyegeria/{server_operations.py → omvs/server_operations.py} +27 -26
- pyegeria/omvs/solution_architect.py +6490 -0
- pyegeria/omvs/specification_properties.py +37 -0
- pyegeria/omvs/subject_area.py +1042 -0
- pyegeria/omvs/template_manager_omvs.py +236 -0
- pyegeria/omvs/time_keeper.py +1761 -0
- pyegeria/omvs/valid_metadata.py +3221 -0
- pyegeria/omvs/valid_metadata_lists.py +37 -0
- pyegeria/omvs/valid_type_lists.py +37 -0
- pyegeria/view/__init__.py +28 -0
- pyegeria/view/_output_format_models.py +514 -0
- pyegeria/view/_output_formats.py +14 -0
- pyegeria/view/base_report_formats.py +2719 -0
- pyegeria/view/dr_egeria_reports.py +56 -0
- pyegeria/view/format_set_executor.py +397 -0
- pyegeria/{md_processing_utils.py → view/md_processing_utils.py} +5 -5
- pyegeria/{mermaid_utilities.py → view/mermaid_utilities.py} +2 -154
- pyegeria/view/output_formatter.py +1297 -0
- pyegeria-5.5.3.3.dist-info/METADATA +218 -0
- pyegeria-5.5.3.3.dist-info/RECORD +241 -0
- {pyegeria-5.3.9.9.3.dist-info → pyegeria-5.5.3.3.dist-info}/WHEEL +2 -1
- pyegeria-5.5.3.3.dist-info/entry_points.txt +103 -0
- pyegeria-5.5.3.3.dist-info/top_level.txt +4 -0
- commands/cat/.DS_Store +0 -0
- commands/cat/README.md +0 -16
- commands/cli/txt_custom_v2.tcss +0 -19
- commands/my/README.md +0 -17
- commands/ops/README.md +0 -24
- commands/ops/monitor_asset_events.py +0 -108
- commands/tech/README.md +0 -24
- pyegeria/.DS_Store +0 -0
- pyegeria/README.md +0 -35
- pyegeria/_globals.py +0 -47
- pyegeria/_validators.py +0 -385
- pyegeria/asset_catalog_omvs.py +0 -864
- pyegeria/automated_curation_omvs.py +0 -3765
- pyegeria/collection_manager_omvs.py +0 -2744
- pyegeria/dr.egeria spec.md +0 -9
- pyegeria/egeria_my_client.py +0 -56
- pyegeria/feedback_manager_omvs.py +0 -4573
- pyegeria/glossary_browser_omvs.py +0 -3728
- pyegeria/glossary_manager_omvs.py +0 -2440
- pyegeria/m_test.py +0 -118
- pyegeria/md_processing_helpers.py +0 -58
- pyegeria/md_processing_utils_orig.py +0 -1103
- pyegeria/metadata_explorer_omvs.py +0 -2326
- pyegeria/my_profile_omvs.py +0 -1022
- pyegeria/output_formatter.py +0 -389
- pyegeria/project_manager_omvs.py +0 -1933
- pyegeria/registered_info.py +0 -167
- pyegeria/solution_architect_omvs.py +0 -2156
- pyegeria/template_manager_omvs.py +0 -1414
- pyegeria/utils.py +0 -197
- pyegeria-5.3.9.9.3.dist-info/METADATA +0 -72
- pyegeria-5.3.9.9.3.dist-info/RECORD +0 -143
- pyegeria-5.3.9.9.3.dist-info/entry_points.txt +0 -99
- /pyegeria/{_exceptions.py → deprecated/_exceptions.py} +0 -0
- {pyegeria-5.3.9.9.3.dist-info → pyegeria-5.5.3.3.dist-info/licenses}/LICENSE +0 -0
|
@@ -21,14 +21,6 @@ nest_asyncio.apply()
|
|
|
21
21
|
from IPython.display import HTML, display
|
|
22
22
|
from rich.console import Console
|
|
23
23
|
|
|
24
|
-
from pyegeria.automated_curation_omvs import AutomatedCuration
|
|
25
|
-
from pyegeria._exceptions import (
|
|
26
|
-
InvalidParameterException,
|
|
27
|
-
PropertyServerException,
|
|
28
|
-
UserNotAuthorizedException,
|
|
29
|
-
)
|
|
30
|
-
from pyegeria._globals import NO_ELEMENTS_FOUND
|
|
31
|
-
|
|
32
24
|
EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
|
|
33
25
|
EGERIA_KAFKA_ENDPOINT = os.environ.get("KAFKA_ENDPOINT", "localhost:9092")
|
|
34
26
|
EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
|
|
@@ -54,7 +46,7 @@ def load_mermaid():
|
|
|
54
46
|
<script>
|
|
55
47
|
document.addEventListener('DOMContentLoaded', function() {
|
|
56
48
|
mermaid.initialize({startOnLoad: true},
|
|
57
|
-
{maxTextSize: 300000});
|
|
49
|
+
{maxTextSize: 300000}, {securityLevel: 'loose'});
|
|
58
50
|
});
|
|
59
51
|
</script>
|
|
60
52
|
|
|
@@ -82,7 +74,7 @@ def render_mermaid(mermaid_code):
|
|
|
82
74
|
<div class="mermaid">
|
|
83
75
|
{escaped_mermaid_code}
|
|
84
76
|
</div>
|
|
85
|
-
<script
|
|
77
|
+
<script type_name = "text/javascript">
|
|
86
78
|
if (window.mermaid) {{
|
|
87
79
|
mermaid.initialize({{startOnLoad: true}});
|
|
88
80
|
mermaid.contentLoaded();
|
|
@@ -1252,147 +1244,3 @@ def save_mermaid_graph(title, mermaid_str, folder: str = EGERIA_MERMAID_FOLDER):
|
|
|
1252
1244
|
return mermaid_file
|
|
1253
1245
|
|
|
1254
1246
|
|
|
1255
|
-
def generate_process_graph(
|
|
1256
|
-
process_guid: str,
|
|
1257
|
-
view_server: str = EGERIA_VIEW_SERVER,
|
|
1258
|
-
url: str = EGERIA_VIEW_SERVER_URL,
|
|
1259
|
-
user_id: str = EGERIA_USER,
|
|
1260
|
-
user_pass: str = EGERIA_USER_PASSWORD,
|
|
1261
|
-
) -> str:
|
|
1262
|
-
"""Generate Mermaid Markdown text reflecting the Egeria process graph identified by the GUID
|
|
1263
|
-
|
|
1264
|
-
Parameters
|
|
1265
|
-
----------
|
|
1266
|
-
process_guid: str
|
|
1267
|
-
The identity of the progress to generate a graph of.
|
|
1268
|
-
|
|
1269
|
-
Returns
|
|
1270
|
-
-------
|
|
1271
|
-
str
|
|
1272
|
-
|
|
1273
|
-
A Mermaid markdown string
|
|
1274
|
-
|
|
1275
|
-
Raises
|
|
1276
|
-
------
|
|
1277
|
-
|
|
1278
|
-
InvalidParameterException
|
|
1279
|
-
If the client passes incorrect parameters on the request - such as bad URLs or invalid values
|
|
1280
|
-
PropertyServerException
|
|
1281
|
-
Raised by the server when an issue arises in processing a valid request
|
|
1282
|
-
NotAuthorizedException
|
|
1283
|
-
The principle specified by the user_id does not have authorization for the requested action
|
|
1284
|
-
|
|
1285
|
-
"""
|
|
1286
|
-
console = Console()
|
|
1287
|
-
a_client = AutomatedCuration(view_server, url, user_id, user_pass)
|
|
1288
|
-
token = a_client.create_egeria_bearer_token()
|
|
1289
|
-
try:
|
|
1290
|
-
start_time = time.perf_counter()
|
|
1291
|
-
response = a_client.get_gov_action_process_graph(process_guid)
|
|
1292
|
-
duration = time.perf_counter() - start_time
|
|
1293
|
-
|
|
1294
|
-
if type(response) is dict:
|
|
1295
|
-
process_steps: [dict]
|
|
1296
|
-
step_links: [dict] = []
|
|
1297
|
-
gov_process_qn = response["governanceActionProcess"]["processProperties"][
|
|
1298
|
-
"qualifiedName"
|
|
1299
|
-
]
|
|
1300
|
-
gov_process_dn = response["governanceActionProcess"]["processProperties"][
|
|
1301
|
-
"displayName"
|
|
1302
|
-
]
|
|
1303
|
-
|
|
1304
|
-
md = f"\n---\ntitle: {gov_process_dn}\n---\nflowchart LR\n"
|
|
1305
|
-
header = '%%{init: {"flowchart": {"htmlLabels": false}} }%%\n'
|
|
1306
|
-
md += header
|
|
1307
|
-
element = response["firstProcessStep"]["element"]
|
|
1308
|
-
qname = element["processStepProperties"]["qualifiedName"]
|
|
1309
|
-
dname = element["processStepProperties"]["displayName"]
|
|
1310
|
-
domain_id = element["processStepProperties"]["domainIdentifier"]
|
|
1311
|
-
guid = element["elementHeader"]["guid"]
|
|
1312
|
-
wait = element["processStepProperties"]["waitTime"]
|
|
1313
|
-
ignore_mult_trig = element["processStepProperties"][
|
|
1314
|
-
"ignoreMultipleTriggers"
|
|
1315
|
-
]
|
|
1316
|
-
link = response["firstProcessStep"]["linkGUID"]
|
|
1317
|
-
|
|
1318
|
-
md = f'{md}\nStep1("`**{dname}**\n*nwait_time*: {wait}\n*nmult_trig*: {ignore_mult_trig}`")'
|
|
1319
|
-
process_steps = {
|
|
1320
|
-
qname: {
|
|
1321
|
-
"step": "Step1",
|
|
1322
|
-
"displayName": dname,
|
|
1323
|
-
"guid": guid,
|
|
1324
|
-
"domain": domain_id,
|
|
1325
|
-
"ignoreMultTrig": ignore_mult_trig,
|
|
1326
|
-
"waitTime": wait,
|
|
1327
|
-
"link_guid": link,
|
|
1328
|
-
}
|
|
1329
|
-
}
|
|
1330
|
-
next_steps = response.get("nextProcessSteps", None)
|
|
1331
|
-
if next_steps is not None:
|
|
1332
|
-
i = 1
|
|
1333
|
-
for step in next_steps:
|
|
1334
|
-
i += 1
|
|
1335
|
-
qname = step["processStepProperties"]["qualifiedName"]
|
|
1336
|
-
dname = step["processStepProperties"]["displayName"]
|
|
1337
|
-
wait = step["processStepProperties"]["waitTime"]
|
|
1338
|
-
step = f"Step{i}"
|
|
1339
|
-
md = f'{md}\n{step}("`**{dname}**\n*wait_time*: {wait}\n*mult_trig*: {ignore_mult_trig}`")'
|
|
1340
|
-
process_steps.update(
|
|
1341
|
-
{
|
|
1342
|
-
qname: {
|
|
1343
|
-
"step": step,
|
|
1344
|
-
"displayName": dname,
|
|
1345
|
-
"guid": guid,
|
|
1346
|
-
"domain": domain_id,
|
|
1347
|
-
"ignoreMultTrig": ignore_mult_trig,
|
|
1348
|
-
"waitTime": wait,
|
|
1349
|
-
}
|
|
1350
|
-
}
|
|
1351
|
-
) # process_steps.append({qname: {"step": step,"displayName": dname, "waitTime": wait}})
|
|
1352
|
-
# print(md)
|
|
1353
|
-
# Now process the links
|
|
1354
|
-
process_step_links = response.get("processStepLinks", None)
|
|
1355
|
-
if process_step_links is not None:
|
|
1356
|
-
for slink in process_step_links:
|
|
1357
|
-
prev_step_name = slink["previousProcessStep"]["uniqueName"]
|
|
1358
|
-
next_step_name = slink["nextProcessStep"]["uniqueName"]
|
|
1359
|
-
next_step_link_guid = slink["nextProcessStepLinkGUID"]
|
|
1360
|
-
guard = slink["guard"]
|
|
1361
|
-
mandatory_guard = slink["mandatoryGuard"]
|
|
1362
|
-
# print(f"\n\n Links: prev_step: {prev_step_name}\t next_step: {next_step_name}\t next_step_link:
|
|
1363
|
-
# {next_step_link_guid}\t Guard: {guard}\t mandatory_guard: {mandatory_guard}")
|
|
1364
|
-
step_links.append(
|
|
1365
|
-
{
|
|
1366
|
-
next_step_link_guid: {
|
|
1367
|
-
"prev_step_name": prev_step_name,
|
|
1368
|
-
"next_step_name": next_step_name,
|
|
1369
|
-
"guard": guard,
|
|
1370
|
-
"mandatory_guard": mandatory_guard,
|
|
1371
|
-
}
|
|
1372
|
-
}
|
|
1373
|
-
)
|
|
1374
|
-
step_p = process_steps[prev_step_name]["step"]
|
|
1375
|
-
step_n = process_steps[next_step_name]["step"]
|
|
1376
|
-
if mandatory_guard:
|
|
1377
|
-
link = f"Mandatory:{guard}"
|
|
1378
|
-
else:
|
|
1379
|
-
link = guard
|
|
1380
|
-
md = f"{md}\n{step_p}-->|{link}|{step_n}"
|
|
1381
|
-
i = 1
|
|
1382
|
-
|
|
1383
|
-
return md
|
|
1384
|
-
|
|
1385
|
-
elif type(response) is str:
|
|
1386
|
-
console.log("\n\n" + response)
|
|
1387
|
-
assert True
|
|
1388
|
-
|
|
1389
|
-
except (
|
|
1390
|
-
InvalidParameterException,
|
|
1391
|
-
PropertyServerException,
|
|
1392
|
-
UserNotAuthorizedException,
|
|
1393
|
-
) as e:
|
|
1394
|
-
console.print_exception(show_locals=True)
|
|
1395
|
-
assert False, "Invalid request"
|
|
1396
|
-
|
|
1397
|
-
finally:
|
|
1398
|
-
a_client.close_session()
|