pyegeria 5.2.1__py3-none-any.whl → 5.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.
Files changed (311) hide show
  1. commands/cat/.DS_Store +0 -0
  2. commands/cat/Dr-Egeria_md-orig.py +166 -0
  3. commands/cat/__init__.py +23 -0
  4. commands/cat/dr_egeria_jupyter.py +122 -0
  5. commands/cat/dr_egeria_md.py +247 -0
  6. {pyegeria/commands → commands}/cat/exp_list_glossaries.py +3 -4
  7. {pyegeria/commands → commands}/cat/get_asset_graph.py +4 -4
  8. {pyegeria/commands → commands}/cat/get_collection.py +8 -9
  9. {pyegeria/commands → commands}/cat/get_project_dependencies.py +6 -8
  10. {pyegeria/commands → commands}/cat/get_project_structure.py +6 -8
  11. {pyegeria/commands → commands}/cat/get_tech_type_elements.py +13 -15
  12. {pyegeria/commands → commands}/cat/glossary_actions.py +184 -34
  13. {pyegeria/commands → commands}/cat/list_assets.py +9 -6
  14. commands/cat/list_categories.py +192 -0
  15. {pyegeria/commands → commands}/cat/list_cert_types.py +6 -6
  16. {pyegeria/commands → commands}/cat/list_collections.py +62 -19
  17. commands/cat/list_data_structures.py +223 -0
  18. {pyegeria/commands → commands}/cat/list_deployed_catalogs.py +9 -8
  19. {pyegeria/commands → commands}/cat/list_deployed_database_schemas.py +10 -9
  20. {pyegeria/commands → commands}/cat/list_deployed_databases.py +9 -8
  21. pyegeria/commands/cat/list_servers_deployed_imp.py → commands/cat/list_deployed_servers.py +3 -3
  22. {pyegeria/commands → commands}/cat/list_glossaries.py +57 -15
  23. {pyegeria/commands → commands}/cat/list_projects.py +5 -5
  24. {pyegeria/commands → commands}/cat/list_tech_type_elements.py +3 -3
  25. {pyegeria/commands → commands}/cat/list_tech_types.py +4 -4
  26. {pyegeria/commands → commands}/cat/list_terms.py +93 -45
  27. {pyegeria/commands → commands}/cat/list_todos.py +3 -3
  28. {pyegeria/commands → commands}/cat/list_user_ids.py +9 -8
  29. {pyegeria/commands → commands}/cli/__init__.py +1 -1
  30. {pyegeria/commands → commands}/cli/egeria.py +513 -250
  31. {pyegeria/commands → commands}/cli/egeria_cat.py +128 -51
  32. {pyegeria/commands → commands}/cli/egeria_login_tui.py +15 -17
  33. {pyegeria/commands → commands}/cli/egeria_my.py +22 -15
  34. {pyegeria/commands → commands}/cli/egeria_ops.py +54 -55
  35. {pyegeria/commands → commands}/cli/egeria_tech.py +364 -152
  36. {pyegeria/commands → commands}/cli/ops_config.py +18 -11
  37. commands/my/__init__.py +22 -0
  38. {pyegeria/commands → commands}/my/list_my_profile.py +6 -8
  39. {pyegeria/commands → commands}/my/list_my_roles.py +4 -4
  40. {pyegeria/commands → commands}/my/monitor_my_todos.py +7 -7
  41. {pyegeria/commands → commands}/my/monitor_open_todos.py +7 -7
  42. {pyegeria/commands → commands}/my/todo_actions.py +3 -2
  43. commands/ops/__init__.py +23 -0
  44. {pyegeria/commands → commands}/ops/gov_server_actions.py +5 -4
  45. {pyegeria/commands → commands}/ops/list_archives.py +7 -6
  46. {pyegeria/commands → commands}/ops/list_catalog_targets.py +4 -4
  47. {pyegeria/commands → commands}/ops/load_archive.py +4 -2
  48. {pyegeria/commands → commands}/ops/monitor_asset_events.py +8 -7
  49. {pyegeria/commands → commands}/ops/monitor_engine_activity.py +5 -5
  50. {pyegeria/commands → commands}/ops/monitor_engine_activity_c.py +3 -3
  51. {pyegeria/commands → commands}/ops/monitor_gov_eng_status.py +3 -2
  52. {pyegeria/commands → commands}/ops/monitor_integ_daemon_status.py +23 -15
  53. {pyegeria/commands → commands}/ops/monitor_platform_status.py +5 -4
  54. {pyegeria/commands → commands}/ops/monitor_server_startup.py +7 -7
  55. {pyegeria/commands → commands}/ops/monitor_server_status.py +16 -11
  56. {pyegeria/commands → commands}/ops/orig_monitor_server_list.py +2 -2
  57. {pyegeria/commands → commands}/ops/orig_monitor_server_status.py +3 -3
  58. {pyegeria/commands → commands}/ops/refresh_integration_daemon.py +4 -4
  59. {pyegeria/commands → commands}/ops/restart_integration_daemon.py +3 -3
  60. {pyegeria/commands → commands}/ops/table_integ_daemon_status.py +3 -3
  61. commands/tech/__init__.py +22 -0
  62. commands/tech/generic_actions.py +74 -0
  63. {pyegeria/commands → commands}/tech/get_element_info.py +5 -7
  64. {pyegeria/commands → commands}/tech/get_guid_info.py +4 -5
  65. {pyegeria/commands → commands}/tech/get_tech_details.py +8 -9
  66. {pyegeria/commands → commands}/tech/get_tech_type_template.py +4 -4
  67. pyegeria/commands/tech/list_elements.py → commands/tech/list_all_om_type_elements.py +11 -10
  68. pyegeria/commands/tech/list_elements_x.py → commands/tech/list_all_om_type_elements_x.py +11 -12
  69. pyegeria/commands/tech/list_related_elements.py → commands/tech/list_all_related_elements.py +11 -9
  70. {pyegeria/commands → commands}/tech/list_anchored_elements.py +16 -16
  71. {pyegeria/commands → commands}/tech/list_asset_types.py +4 -4
  72. commands/tech/list_elements_by_classification_by_property_value.py +200 -0
  73. commands/tech/list_elements_by_property_value.py +180 -0
  74. commands/tech/list_elements_by_property_value_x.py +201 -0
  75. {pyegeria/commands → commands}/tech/list_elements_for_classification.py +11 -9
  76. {pyegeria/commands → commands}/tech/list_gov_action_processes.py +5 -6
  77. commands/tech/list_information_supply_chains.py +167 -0
  78. {pyegeria/commands → commands}/tech/list_registered_services.py +3 -3
  79. commands/tech/list_related_elements_with_prop_value.py +221 -0
  80. {pyegeria/commands → commands}/tech/list_related_specification.py +3 -3
  81. {pyegeria/commands → commands}/tech/list_relationship_types.py +4 -5
  82. {pyegeria/commands → commands}/tech/list_relationships.py +3 -3
  83. commands/tech/list_solution_blueprints.py +181 -0
  84. commands/tech/list_solution_components.py +185 -0
  85. commands/tech/list_solution_roles.py +184 -0
  86. {pyegeria/commands → commands}/tech/list_tech_templates.py +3 -3
  87. {pyegeria/commands → commands}/tech/list_valid_metadata_values.py +5 -6
  88. {pyegeria/commands → commands}/tech/table_tech_templates.py +16 -13
  89. {pyegeria/commands → commands}/tech/x_list_related_elements.py +6 -4
  90. md_processing/__init__.py +49 -0
  91. md_processing/data/commands.json +3252 -0
  92. md_processing/dr_egeria_inbox/archive/dr_egeria_intro.md +254 -0
  93. md_processing/dr_egeria_inbox/archive/dr_egeria_intro_more_terms.md +696 -0
  94. md_processing/dr_egeria_inbox/archive/dr_egeria_intro_part1.md +254 -0
  95. md_processing/dr_egeria_inbox/archive/dr_egeria_intro_part2.md +298 -0
  96. md_processing/dr_egeria_inbox/archive/dr_egeria_intro_part3.md +608 -0
  97. md_processing/dr_egeria_inbox/archive/dr_egeria_intro_part4.md +94 -0
  98. md_processing/dr_egeria_inbox/archive/freddie_intro.md +284 -0
  99. md_processing/dr_egeria_inbox/archive/freddie_intro_orig.md +275 -0
  100. md_processing/dr_egeria_inbox/archive/test-term.md +110 -0
  101. md_processing/dr_egeria_inbox/cat_test.md +100 -0
  102. md_processing/dr_egeria_inbox/data_field.md +54 -0
  103. md_processing/dr_egeria_inbox/data_spec.md +77 -0
  104. md_processing/dr_egeria_inbox/data_spec_test.md +2406 -0
  105. md_processing/dr_egeria_inbox/data_test.md +86 -0
  106. md_processing/dr_egeria_inbox/dr_egeria_intro_categories.md +168 -0
  107. md_processing/dr_egeria_inbox/dr_egeria_intro_part1.md +280 -0
  108. md_processing/dr_egeria_inbox/dr_egeria_intro_part2.md +313 -0
  109. md_processing/dr_egeria_inbox/dr_egeria_intro_part3.md +1073 -0
  110. md_processing/dr_egeria_inbox/dr_egeria_isc1.md +44 -0
  111. md_processing/dr_egeria_inbox/glossary_creation_experiment.ipynb +341 -0
  112. md_processing/dr_egeria_inbox/glossary_test1.md +324 -0
  113. md_processing/dr_egeria_inbox/rel.md +8 -0
  114. md_processing/dr_egeria_inbox/sb.md +119 -0
  115. md_processing/dr_egeria_inbox/search_test.md +39 -0
  116. md_processing/dr_egeria_inbox/solution-components.md +154 -0
  117. md_processing/dr_egeria_inbox/solution_blueprints.md +118 -0
  118. md_processing/dr_egeria_inbox/synonym_test.md +42 -0
  119. md_processing/dr_egeria_inbox/t2.md +268 -0
  120. md_processing/dr_egeria_outbox/processed-2025-05-15 19:52-data_test.md +94 -0
  121. md_processing/dr_egeria_outbox/processed-2025-05-16 07:39-data_test.md +88 -0
  122. md_processing/dr_egeria_outbox/processed-2025-05-17 16:01-data_field.md +56 -0
  123. md_processing/dr_egeria_outbox/processed-2025-05-18 15:51-data_test.md +103 -0
  124. md_processing/dr_egeria_outbox/processed-2025-05-18 16:47-data_test.md +94 -0
  125. md_processing/dr_egeria_outbox/processed-2025-05-19 07:14-data_test.md +96 -0
  126. md_processing/dr_egeria_outbox/processed-2025-05-19 07:20-data_test.md +100 -0
  127. md_processing/dr_egeria_outbox/processed-2025-05-19 07:22-data_test.md +88 -0
  128. md_processing/dr_egeria_outbox/processed-2025-05-19 09:26-data_test.md +91 -0
  129. md_processing/dr_egeria_outbox/processed-2025-05-19 10:27-data_test.md +91 -0
  130. md_processing/dr_egeria_outbox/processed-2025-05-19 14:04-data_test.md +91 -0
  131. md_processing/md_commands/__init__.py +3 -0
  132. md_processing/md_commands/blueprint_commands.py +303 -0
  133. md_processing/md_commands/data_designer_commands.py +1182 -0
  134. md_processing/md_commands/glossary_commands.py +1144 -0
  135. md_processing/md_commands/project_commands.py +163 -0
  136. md_processing/md_processing_utils/__init__.py +4 -0
  137. md_processing/md_processing_utils/common_md_proc_utils.py +724 -0
  138. md_processing/md_processing_utils/common_md_utils.py +172 -0
  139. md_processing/md_processing_utils/extraction_utils.py +486 -0
  140. md_processing/md_processing_utils/md_processing_constants.py +128 -0
  141. md_processing/md_processing_utils/message_constants.py +19 -0
  142. pyegeria/.DS_Store +0 -0
  143. pyegeria/__init__.py +231 -146
  144. pyegeria/_client.py +36 -13
  145. pyegeria/_exceptions.py +55 -46
  146. pyegeria/_globals.py +11 -1
  147. pyegeria/_validators.py +5 -5
  148. pyegeria/asset_catalog_omvs.py +78 -21
  149. pyegeria/automated_curation_omvs.py +11 -6
  150. pyegeria/classification_manager_omvs.py +41 -37
  151. pyegeria/collection_manager_omvs.py +722 -705
  152. pyegeria/core_omag_server_config.py +1 -1
  153. pyegeria/create_tech_guid_lists.py +13 -13
  154. pyegeria/data_designer_omvs.py +5104 -0
  155. pyegeria/dr.egeria spec.md +9 -0
  156. pyegeria/egeria_cat_client.py +5 -8
  157. pyegeria/egeria_client.py +39 -24
  158. pyegeria/egeria_config_client.py +2 -1
  159. pyegeria/egeria_my_client.py +4 -4
  160. pyegeria/egeria_tech_client.py +40 -18
  161. pyegeria/feedback_manager_omvs.py +1 -1
  162. pyegeria/full_omag_server_config.py +5 -3
  163. pyegeria/glossary_browser_omvs.py +1915 -694
  164. pyegeria/glossary_manager_omvs.py +685 -1842
  165. pyegeria/m_test.py +118 -0
  166. pyegeria/md_processing_helpers.py +58 -0
  167. pyegeria/md_processing_utils.py +2147 -0
  168. pyegeria/md_processing_utils_orig.py +1103 -0
  169. pyegeria/mermaid_utilities.py +1194 -14
  170. pyegeria/metadata_explorer_omvs.py +5 -50
  171. pyegeria/my_profile_omvs.py +3 -2
  172. pyegeria/output_formatter.py +389 -0
  173. pyegeria/platform_services.py +5 -5
  174. pyegeria/project_manager_omvs.py +97 -18
  175. pyegeria/runtime_manager_omvs.py +8 -10
  176. pyegeria/server_operations.py +2 -2
  177. pyegeria/solution_architect_omvs.py +2156 -0
  178. pyegeria/template_manager_omvs.py +13 -13
  179. pyegeria/utils.py +3 -1
  180. pyegeria/valid_metadata_omvs.py +5 -4
  181. pyegeria/x_action_author_omvs.py +3 -6
  182. {pyegeria-5.2.1.dist-info → pyegeria-5.3.dist-info}/METADATA +9 -8
  183. pyegeria-5.3.dist-info/RECORD +196 -0
  184. {pyegeria-5.2.1.dist-info → pyegeria-5.3.dist-info}/WHEEL +1 -1
  185. pyegeria-5.3.dist-info/entry_points.txt +99 -0
  186. pyegeria/commands/README.md +0 -47
  187. pyegeria/commands/__init__.py +0 -22
  188. pyegeria/commands/cat/__init__.py +0 -1
  189. pyegeria/commands/doc/README.md +0 -145
  190. pyegeria/commands/doc/Visual Command Reference/README.md +0 -511
  191. pyegeria/commands/doc/Visual Command Reference/cat/show/assets/asset-graph 2024-11-20 at 15.56.42.png +0 -0
  192. pyegeria/commands/doc/Visual Command Reference/cat/show/assets/assets-in-domain 2024-11-20 at 15.49.55@2x.png +0 -0
  193. pyegeria/commands/doc/Visual Command Reference/cat/show/assets/elements-of-type 2024-11-20 at 16.01.35.png +0 -0
  194. pyegeria/commands/doc/Visual Command Reference/cat/show/assets/tech-type-elements 2024-11-20 at 16.05.05.png +0 -0
  195. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-data-catalogs 2024-12-17 at 15.43.27@2x.png +0 -0
  196. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-data-catalogs-2024-11-20 at 16.17.43@2x.png +0 -0
  197. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-schemas 2024-11-25 at 20.14.50@2x.png +0 -0
  198. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-schemas 2024-12-17 at 15.48.38@2x.png +0 -0
  199. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-servers 2024-11-25 at 20.21.25@2x.png +0 -0
  200. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed-servers 2024-12-17 at 15.52.16@2x.png +0 -0
  201. pyegeria/commands/doc/Visual Command Reference/cat/show/deployed-data/deployed_databases 2024-12-16 at 16.40.31@2x.png +0 -0
  202. pyegeria/commands/doc/Visual Command Reference/cat/show/glossary/list-glossaries 2024-11-25 at 20.30.02.png +0 -0
  203. pyegeria/commands/doc/Visual Command Reference/cat/show/glossary/list-terms 2024-11-25 at 20.32.11.png +0 -0
  204. pyegeria/commands/doc/Visual Command Reference/cat/show/info/asset-types 2024-11-25 at 20.34.19@2x.png +0 -0
  205. pyegeria/commands/doc/Visual Command Reference/cat/show/info/certification-types 2024-11-25 at 20.37.07.png +0 -0
  206. pyegeria/commands/doc/Visual Command Reference/cat/show/info/collection-graph 2024-12-12 at 11.33.18@2x.png +0 -0
  207. pyegeria/commands/doc/Visual Command Reference/cat/show/info/list-collections 2024-12-10 at 14.25.51@2x.png +0 -0
  208. pyegeria/commands/doc/Visual Command Reference/cat/show/info/list-todos 2024-12-12 at 11.46.30@2x.png +0 -0
  209. pyegeria/commands/doc/Visual Command Reference/cat/show/info/list-user-ids 2024-12-12 at 11.51.09@2x.png +0 -0
  210. pyegeria/commands/doc/Visual Command Reference/cat/show/info/tech-types 2024-12-12 at 11.37.20@2x.png +0 -0
  211. pyegeria/commands/doc/Visual Command Reference/cat/show/projects/project_dependencies 2024-12-14 at 16.24.39@2x.png +0 -0
  212. pyegeria/commands/doc/Visual Command Reference/cat/show/projects/project_structure 2024-12-14 at 16.21.35@2x.png +0 -0
  213. pyegeria/commands/doc/Visual Command Reference/cat/show/projects/projects 2024-12-14 at 16.18.10@2x.png +0 -0
  214. pyegeria/commands/doc/Visual Command Reference/hey_egeria tui 2024-12-16 at 16.58.22@2x.png +0 -0
  215. pyegeria/commands/doc/Visual Command Reference/my/show/my_profile 2024-12-14 at 16.29.27@2x.png +0 -0
  216. pyegeria/commands/doc/Visual Command Reference/my/show/my_roles 2024-12-14 at 16.32.10@2x.png +0 -0
  217. pyegeria/commands/doc/Visual Command Reference/my/show/my_todos 2024-12-15 at 16.24.13@2x.png +0 -0
  218. pyegeria/commands/doc/Visual Command Reference/my/show/open_todos 2024-12-14 at 16.36.12@2x.png +0 -0
  219. pyegeria/commands/doc/Visual Command Reference/ops/show/engines/list_engine_activity compressed 2024-12-15 at 16.48.48@2x.png +0 -0
  220. pyegeria/commands/doc/Visual Command Reference/ops/show/engines/monitor_engine_activity 2024-12-15 at 16.32.55@2x.png +0 -0
  221. pyegeria/commands/doc/Visual Command Reference/ops/show/engines/monitor_engine_activity compressed 2024-12-15 at 16.38.29@2x.png +0 -0
  222. pyegeria/commands/doc/Visual Command Reference/ops/show/engines/monitor_engine_status 2024-12-15 at 16.51.26.jpeg +0 -0
  223. pyegeria/commands/doc/Visual Command Reference/ops/show/integrations/monitor_integration_daemon_status 2024-12-15 at 16.57.12@2x.png +0 -0
  224. pyegeria/commands/doc/Visual Command Reference/ops/show/integrations/monitor_integration_targets 2024-12-15 at 17.02.19@2x.png +0 -0
  225. pyegeria/commands/doc/Visual Command Reference/ops/show/platforms/monitor_platform_status 2024-12-15 at 19.53.18@2x.png +0 -0
  226. pyegeria/commands/doc/Visual Command Reference/ops/show/servers/monitor_server_status 2024-12-15 at 19.59.39@2x.png +0 -0
  227. pyegeria/commands/doc/Visual Command Reference/ops/show/servers/monitor_server_status full 2024-12-15 at 20.01.57@2x.png +0 -0
  228. pyegeria/commands/doc/Visual Command Reference/ops/show/servers/monitor_startup_servers 2024-12-15 at 19.56.07@2x.png +0 -0
  229. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/get_anchored_elements 2024-12-15 at 21.25.41@2x.png +0 -0
  230. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/get_elements_of_om_type 2024-12-16 at 14.39.59@2x.png +0 -0
  231. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/info_for_guid 2024-12-16 at 11.35.29@2x.png +0 -0
  232. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/list_elements_by_om-type 2024-12-16 at 14.24.18@2x.png +0 -0
  233. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/list_elements_by_om-type extended 2024-12-16 at 14.28.46@2x.png +0 -0
  234. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/list_elements_of_om_type_by_classification 2024-12-16 at 14.35.26@2x.png +0 -0
  235. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/related_elements 2024-12-16 at 14.55.01@2x.png +0 -0
  236. pyegeria/commands/doc/Visual Command Reference/tech/show/elements/show_related_specifications 2024-12-16 at 15.04.55@2x.png +0 -0
  237. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/asset_types 2024-12-16 at 15.10.16@2x.png +0 -0
  238. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/detailed_governance_action_processes 2024-12-16 at 15.16.26@2x.png +0 -0
  239. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/governance_action_processes 2024-12-16 at 15.13.01@2x.png +0 -0
  240. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/registered_services 2024-12-16 at 16.44.54@2x.png +0 -0
  241. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/relationship_types 2024-12-16 at 16.20.34@2x.png +0 -0
  242. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/relationship_types 2024-12-19 at 10.51.54@2x.png +0 -0
  243. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-info/valid_metadata_values 2024-12-16 at 15.31.56@2x.png +0 -0
  244. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/list_tech_type_template_specs 2024-12-16 at 16.03.22@2x.png +0 -0
  245. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/list_technology_types 2024-12-16 at 15.39.20@2x.png +0 -0
  246. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/tech_type_details 2024-12-16 at 15.37.21@2x.png +0 -0
  247. pyegeria/commands/doc/Visual Command Reference/tech/show/tech-types/tech_type_templates 2024-12-16 at 16.11.48@2x.png +0 -0
  248. pyegeria/commands/doc/glossary/basic-glossary-tui.md +0 -109
  249. pyegeria/commands/doc/glossary/images/delete-glossary-step1 2024-11-06 at 15.47.23@2x.png +0 -0
  250. pyegeria/commands/doc/glossary/images/delete-glossary-step2 2024-11-06 at 15.51.29@2x.png +0 -0
  251. pyegeria/commands/doc/glossary/images/delete-glossary-step3 2024-11-06 at 15.53.19@2x.png +0 -0
  252. pyegeria/commands/doc/glossary/images/delete-glossary-step4 2024-11-06 at 15.55.11@2x.png +0 -0
  253. pyegeria/commands/doc/glossary/images/out-create-glossary example 2024-11-05 at 20.38.04@2x.png +0 -0
  254. pyegeria/commands/doc/glossary/images/out-create-term 2024-11-06 at 20.48.29.png +0 -0
  255. pyegeria/commands/doc/glossary/images/out-delete-term 2024-11-07 at 03.57.25.png +0 -0
  256. pyegeria/commands/doc/glossary/images/out-display-terms-for-glossary-test 2024-11-06 at 20.51.28.png +0 -0
  257. pyegeria/commands/doc/glossary/images/out-export-example 2024-11-07 at 09.54.57.png +0 -0
  258. pyegeria/commands/doc/glossary/images/out-exported-terms 2024-11-06 at 21.06.32.png +0 -0
  259. pyegeria/commands/doc/glossary/images/out-glossary-list example 2024-11-05 at 20.41.02@2x.png +0 -0
  260. pyegeria/commands/doc/glossary/images/out-import-terms 2024-11-07 at 08.15.18.png +0 -0
  261. pyegeria/commands/doc/glossary/images/out-list-all-terms 2024-11-06 at 16.22.20@2x.png +0 -0
  262. pyegeria/commands/doc/glossary/images/out-list-terms-for-example 2024-11-06 at 16.40.12.png +0 -0
  263. pyegeria/commands/doc/glossary/images/out-list-terms-second 2024-11-06 at 16.45.13.png +0 -0
  264. pyegeria/commands/doc/glossary/images/out-pipx install pyegeria 2024-11-10 at 18.12.21.png +0 -0
  265. pyegeria/commands/doc/glossary/images/out-server-status-full 2024-11-10 at 18.25.14.png +0 -0
  266. pyegeria/commands/doc/glossary/images/out-servers-status 2024-11-10 at 18.15.42.png +0 -0
  267. pyegeria/commands/doc/glossary/images/out-upsert-import 2024-11-07 at 19.37.00.png +0 -0
  268. pyegeria/commands/doc/glossary/images/tui-2024-11-10 at 18.26.29.png +0 -0
  269. pyegeria/commands/doc/glossary/images/tui-create-glossary example 2024-11-05 at 20.34.24@2x.png +0 -0
  270. pyegeria/commands/doc/glossary/images/tui-create-term 2024-11-06 at 20.46.35.png +0 -0
  271. pyegeria/commands/doc/glossary/images/tui-delete-term 2024-11-07 at 03.51.57.png +0 -0
  272. pyegeria/commands/doc/glossary/images/tui-display-terms-for-example 2024-11-06 at 20.56.49.png +0 -0
  273. pyegeria/commands/doc/glossary/images/tui-export-example 2024-11-07 at 09.52.59.png +0 -0
  274. pyegeria/commands/doc/glossary/images/tui-hey-egeria 2024-11-10 at 18.31.01.png +0 -0
  275. pyegeria/commands/doc/glossary/images/tui-import-upsert-example 2024-11-07 at 10.08.37.png +0 -0
  276. pyegeria/commands/doc/glossary/images/tui-list-terms-second 2024-11-06 at 16.46.34.png +0 -0
  277. pyegeria/commands/doc/glossary/images/tui-load-archive.png +0 -0
  278. pyegeria/commands/doc/glossary/images/tui-server-status-full 2024-11-10 at 19.14.36.png +0 -0
  279. pyegeria/commands/doc/glossary/images/tui-show-glossaries 2024-11-07 at 20.00.05.png +0 -0
  280. pyegeria/commands/doc/glossary/images/tui-show-glossary-terms 2024-11-05 at 19.37.53@2x.png +0 -0
  281. pyegeria/commands/doc/glossary/images/tui-upsert 2024-11-07 at 11.49.04.png +0 -0
  282. pyegeria/commands/doc/glossary/images/upsert-example.om-terms 2024-11-07 at 11.44.05.png +0 -0
  283. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/README.md +0 -346
  284. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/CleanShot 2024-11-18 at 21.32.03@2x.png +0 -0
  285. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/Xmind 1731421782704.png +0 -0
  286. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/Xmind 1731422134920.png +0 -0
  287. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/hey_egeria 2024-11-12 at 20.38.43.png +0 -0
  288. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/hey_egeria cat 2024-11-12 at 21.41.43.png +0 -0
  289. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/out-integ-status-list 2024-11-12 at 16.45.26.png +0 -0
  290. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/out-integ-status-live 2024-11-12 at 16.44.12@2x.png +0 -0
  291. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/out-server-status 2024-11-10 at 18.15.42@2x.png +0 -0
  292. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/out-server-status-full 2024-11-10 at 18.25.14@2x.png +0 -0
  293. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/short-cut commands 2024-11-12 at 22.22.13.png +0 -0
  294. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-hey-egeria.png +0 -0
  295. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-integration-status-paging.png +0 -0
  296. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-load-archive 2024-11-10 at 19.19.09@2x.png +0 -0
  297. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-show-server-status 2024-11-10 at 18.52.01@2x.png +0 -0
  298. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-show-server-status-full 2024-11-10.png +0 -0
  299. pyegeria/commands/doc/hey_egeria: a pyegeria command line interface/images/tui-status-paging 2024-11-12 at 16.26.14@2x.png +0 -0
  300. pyegeria/commands/ops/__init__.py +0 -22
  301. pyegeria/commands/tech/__init__.py +0 -0
  302. pyegeria-5.2.1.dist-info/RECORD +0 -232
  303. pyegeria-5.2.1.dist-info/entry_points.txt +0 -81
  304. {pyegeria/commands → commands}/cat/README.md +0 -0
  305. {pyegeria/commands → commands}/cli/txt_custom_v2.tcss +0 -0
  306. {pyegeria/commands → commands}/my/README.md +0 -0
  307. {pyegeria/commands → commands}/ops/README.md +0 -0
  308. {pyegeria/commands → commands}/ops/x_engine_actions.py +0 -0
  309. {pyegeria/commands → commands}/tech/README.md +0 -0
  310. /pyegeria/commands/my/__init__.py → /md_processing/dr_egeria_inbox/t1.md +0 -0
  311. {pyegeria-5.2.1.dist-info → pyegeria-5.3.dist-info}/LICENSE +0 -0
@@ -18,24 +18,22 @@ from rich.prompt import Prompt
18
18
  from rich.tree import Tree
19
19
 
20
20
  from pyegeria import (
21
+ InvalidParameterException,
21
22
  ProjectManager,
22
- UserNotAuthorizedException,
23
23
  PropertyServerException,
24
- InvalidParameterException,
25
- )
26
- from pyegeria._exceptions import (
27
- print_exception_response,
24
+ UserNotAuthorizedException,
28
25
  )
26
+ from pyegeria._exceptions import print_exception_response
29
27
 
30
28
  disable_ssl_warnings = True
31
29
  EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
32
30
  EGERIA_KAFKA_ENDPOINT = os.environ.get("KAFKA_ENDPOINT", "localhost:9092")
33
31
  EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
34
- EGERIA_VIEW_SERVER = os.environ.get("VIEW_SERVER", "view-server")
32
+ EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
35
33
  EGERIA_VIEW_SERVER_URL = os.environ.get(
36
34
  "EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
37
35
  )
38
- EGERIA_INTEGRATION_DAEMON = os.environ.get("INTEGRATION_DAEMON", "integration-daemon")
36
+ EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
39
37
  EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
40
38
  EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
41
39
  EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
@@ -111,7 +109,7 @@ def project_dependency_viewer(
111
109
  child_md = ""
112
110
  child_guid = proj["elementHeader"]["guid"]
113
111
  child_name = proj["properties"]["name"]
114
- relationship = proj["relatedElement"]["relationshipHeader"]["type"][
112
+ relationship = proj["startingElement"]["relationshipHeader"]["type"][
115
113
  "typeName"
116
114
  ]
117
115
  if relationship != "ProjectDependency":
@@ -18,24 +18,22 @@ from rich.prompt import Prompt
18
18
  from rich.tree import Tree
19
19
 
20
20
  from pyegeria import (
21
+ InvalidParameterException,
21
22
  ProjectManager,
22
- UserNotAuthorizedException,
23
23
  PropertyServerException,
24
- InvalidParameterException,
25
- )
26
- from pyegeria._exceptions import (
27
- print_exception_response,
24
+ UserNotAuthorizedException,
28
25
  )
26
+ from pyegeria._exceptions import print_exception_response
29
27
 
30
28
  disable_ssl_warnings = True
31
29
  EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
32
30
  EGERIA_KAFKA_ENDPOINT = os.environ.get("KAFKA_ENDPOINT", "localhost:9092")
33
31
  EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
34
- EGERIA_VIEW_SERVER = os.environ.get("VIEW_SERVER", "view-server")
32
+ EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
35
33
  EGERIA_VIEW_SERVER_URL = os.environ.get(
36
34
  "EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
37
35
  )
38
- EGERIA_INTEGRATION_DAEMON = os.environ.get("INTEGRATION_DAEMON", "integration-daemon")
36
+ EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
39
37
  EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
40
38
  EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
41
39
  EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
@@ -111,7 +109,7 @@ def project_structure_viewer(
111
109
  child_md = ""
112
110
  child_guid = proj["elementHeader"]["guid"]
113
111
  child_name = proj["properties"]["name"]
114
- relationship = proj["relatedElement"]["relationshipHeader"]["type"][
112
+ relationship = proj["startingElement"]["relationshipHeader"]["type"][
115
113
  "typeName"
116
114
  ]
117
115
  if relationship != "ProjectHierarchy":
@@ -5,39 +5,37 @@ Copyright Contributors to the ODPi Egeria project.
5
5
 
6
6
  Display the status of cataloged platforms and servers.
7
7
  """
8
- import sys
9
- import time
10
8
  import argparse
11
9
  import os
10
+ import sys
11
+ import time
12
12
 
13
- from rich import json
13
+ from rich import json, print
14
+ from rich.console import Console
15
+ from rich.live import Live
16
+ from rich.markdown import Markdown
14
17
  from rich.panel import Panel
18
+ from rich.prompt import Prompt
19
+ from rich.table import Table
20
+ from rich.text import Text
21
+ from rich.tree import Tree
15
22
 
16
23
  from pyegeria import (
24
+ AutomatedCuration,
17
25
  InvalidParameterException,
18
26
  PropertyServerException,
19
27
  UserNotAuthorizedException,
20
28
  print_exception_response,
21
- AutomatedCuration,
22
29
  )
23
- from rich.table import Table
24
- from rich.live import Live
25
- from rich.console import Console
26
- from rich.markdown import Markdown
27
- from rich.tree import Tree
28
- from rich.prompt import Prompt
29
- from rich.panel import Panel
30
- from rich.text import Text
31
- from rich import print
32
30
 
33
31
  EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
34
32
  EGERIA_KAFKA_ENDPOINT = os.environ.get("KAFKA_ENDPOINT", "localhost:9092")
35
33
  EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
36
- EGERIA_VIEW_SERVER = os.environ.get("VIEW_SERVER", "view-server")
34
+ EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
37
35
  EGERIA_VIEW_SERVER_URL = os.environ.get(
38
36
  "EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
39
37
  )
40
- EGERIA_INTEGRATION_DAEMON = os.environ.get("INTEGRATION_DAEMON", "integration-daemon")
38
+ EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
41
39
  EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
42
40
  EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
43
41
  EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
@@ -7,17 +7,13 @@ Copyright Contributors to the ODPi Egeria project.
7
7
  Execute Glossary actions.
8
8
 
9
9
  """
10
+
10
11
  import csv
11
12
  import json
12
13
  import os
13
14
  import sys
14
15
  import time
15
16
  from datetime import datetime
16
- from rich import box
17
- from rich.console import Console
18
- from rich.prompt import Prompt
19
- from rich.table import Table
20
- from rich.text import Text
21
17
 
22
18
  import click
23
19
 
@@ -29,15 +25,14 @@ from pyegeria._exceptions import (
29
25
  print_exception_response,
30
26
  )
31
27
 
32
-
33
28
  EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
34
29
  EGERIA_KAFKA_ENDPOINT = os.environ.get("KAFKA_ENDPOINT", "localhost:9092")
35
30
  EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
36
- EGERIA_VIEW_SERVER = os.environ.get("VIEW_SERVER", "view-server")
31
+ EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
37
32
  EGERIA_VIEW_SERVER_URL = os.environ.get(
38
33
  "EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
39
34
  )
40
- EGERIA_INTEGRATION_DAEMON = os.environ.get("INTEGRATION_DAEMON", "integration-daemon")
35
+ EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
41
36
  EGERIA_INTEGRATION_DAEMON_URL = os.environ.get(
42
37
  "EGERIA_INTEGRATION_DAEMON_URL", "https://localhost:9443"
43
38
  )
@@ -133,7 +128,7 @@ def delete_glossary(server, url, userid, password, timeout, glossary_guid):
133
128
  m_client = EgeriaTech(server, url, user_id=userid, user_pwd=password)
134
129
  token = m_client.create_egeria_bearer_token()
135
130
  try:
136
- m_client.delete_glossary(glossary_guid)
131
+ m_client.delete_glossary(glossary_guid, cascade = True)
137
132
 
138
133
  click.echo(f"Deleted glossary: {glossary_guid}")
139
134
 
@@ -146,6 +141,7 @@ def delete_glossary(server, url, userid, password, timeout, glossary_guid):
146
141
  @click.command("create-term")
147
142
  @click.option("--glossary-name", help="Name of Glossary", required=True)
148
143
  @click.option("--term-name", help="Name of Term", required=True)
144
+ @click.option("--qualified-name", help="Qualified name of Term", default=None)
149
145
  @click.option(
150
146
  "--summary",
151
147
  help="Summary definition",
@@ -175,31 +171,23 @@ def delete_glossary(server, url, userid, password, timeout, glossary_guid):
175
171
  @click.option("--userid", default=EGERIA_USER, help="Egeria user")
176
172
  @click.option("--password", default=EGERIA_USER_PASSWORD, help="Egeria user password")
177
173
  @click.option("--timeout", default=60, help="Number of seconds to wait")
178
- def create_term(
179
- server,
180
- url,
181
- userid,
182
- password,
183
- glossary_name,
184
- term_name,
185
- summary,
186
- description,
187
- abbrev,
188
- examples,
189
- usage,
190
- version,
191
- status,
192
- timeout: int = 120,
193
- ) -> str:
194
- """Create a new term"""
174
+ def create_term(server, url, userid, password, glossary_name, term_name, summary, description, abbrev, examples, usage,
175
+ version, status, timeout: int = 120, qualified_name=None) -> str:
176
+ """Create a new term
177
+
178
+ Args:
179
+ qualified_name:
180
+ """
195
181
  m_client = EgeriaTech(server, url, user_id=userid, user_pwd=password)
196
182
  token = m_client.create_egeria_bearer_token()
183
+ if qualified_name is None:
184
+ qualified_name = m_client.__create_qualified_name__('Term', term_name)
197
185
  try:
198
186
  body = {
199
187
  "class": "ReferenceableRequestBody",
200
188
  "elementProperties": {
201
189
  "class": "GlossaryTermProperties",
202
- "qualifiedName": f"GlossaryTerm: {term_name} - {datetime.now().isoformat()}",
190
+ "qualifiedName": qualified_name,
203
191
  "displayName": term_name,
204
192
  "summary": summary,
205
193
  "description": description,
@@ -264,10 +252,68 @@ def delete_term(server, url, userid, password, timeout, term_guid):
264
252
  finally:
265
253
  m_client.close_session()
266
254
 
255
+ @click.command("add-term-to-category")
256
+ @click.option("--server", default=EGERIA_VIEW_SERVER, help="Egeria view server to use")
257
+ @click.option(
258
+ "--url", default=EGERIA_VIEW_SERVER_URL, help="URL of Egeria platform to connect to"
259
+ )
260
+ @click.option("--userid", default=EGERIA_USER, help="Egeria user")
261
+ @click.option("--password", default=EGERIA_USER_PASSWORD, help="Egeria user password")
262
+ @click.option("--timeout", default=60, help="Number of seconds to wait")
263
+ @click.option("--term-guid", required=True, help="GUID of term to add to a category")
264
+ @click.option("--category-guid", required=True, help="GUID of category to add term to")
265
+
266
+ def add_term_to_category(server, url, userid, password, timeout, term_guid, category_guid):
267
+ """Add a glossary term to a category"""
268
+ m_client = EgeriaTech(server, url, user_id=userid, user_pwd=password)
269
+ token = m_client.create_egeria_bearer_token()
270
+ try:
271
+ term_guid = term_guid.strip()
272
+ category_guid = category_guid.strip()
273
+ m_client.add_term_to_category(term_guid, category_guid)
274
+
275
+ click.echo(
276
+ f"Added term with GUID: {term_guid} to category with GUID: {category_guid}\n"
277
+ )
278
+
279
+ except (InvalidParameterException, PropertyServerException) as e:
280
+ print_exception_response(e)
281
+ finally:
282
+ m_client.close_session()
267
283
 
268
- @click.command("import-terms")
284
+ @click.command("remove-term-from-category")
285
+ @click.option("--server", default=EGERIA_VIEW_SERVER, help="Egeria view server to use")
286
+ @click.option(
287
+ "--url", default=EGERIA_VIEW_SERVER_URL, help="URL of Egeria platform to connect to"
288
+ )
289
+ @click.option("--userid", default=EGERIA_USER, help="Egeria user")
290
+ @click.option("--password", default=EGERIA_USER_PASSWORD, help="Egeria user password")
291
+ @click.option("--timeout", default=60, help="Number of seconds to wait")
292
+ @click.option("--term-guid", required=True, help="GUID of term to add to a category")
293
+ @click.option("--category-guid", required=True, help="GUID of category to add term to")
294
+
295
+ def remove_term_from_category(server, url, userid, password, timeout, term_guid, category_guid):
296
+ """Add a glossary term to a category"""
297
+ m_client = EgeriaTech(server, url, user_id=userid, user_pwd=password)
298
+ token = m_client.create_egeria_bearer_token()
299
+ try:
300
+ term_guid = term_guid.strip()
301
+ category_guid = category_guid.strip()
302
+ m_client.remove_term_from_category(term_guid, category_guid)
303
+
304
+ click.echo(
305
+ f"Removed term with GUID: {term_guid} from category with GUID: {category_guid}\n"
306
+ )
307
+
308
+ except (InvalidParameterException, PropertyServerException) as e:
309
+ print_exception_response(e)
310
+ finally:
311
+ m_client.close_session()
312
+
313
+
314
+ @click.command("import-terms-from-csv")
269
315
  @click.option("--glossary_name", help="Name of Glossary", required=True)
270
- @click.option("--file_name", help="Path of CSV file", required=True)
316
+ @click.option("--file_name", help="Name of CSV file", required=True)
271
317
  @click.option(
272
318
  "--file_path", help="Path of CSV file", default=EGERIA_GLOSSARY_PATH, required=False
273
319
  )
@@ -290,7 +336,7 @@ def delete_term(server, url, userid, password, timeout, term_guid):
290
336
  @click.option("--userid", default=EGERIA_USER, help="Egeria user")
291
337
  @click.option("--password", default=EGERIA_USER_PASSWORD, help="Egeria user password")
292
338
  @click.option("--timeout", default=60, help="Number of seconds to wait")
293
- def import_terms(
339
+ def import_terms_csv(
294
340
  glossary_name: str,
295
341
  file_path: str,
296
342
  file_name: str,
@@ -306,7 +352,7 @@ def import_terms(
306
352
  m_client = EgeriaTech(server, url, user_id=userid, user_pwd=password)
307
353
  token = m_client.create_egeria_bearer_token()
308
354
  try:
309
- result = m_client.load_terms_from_file(
355
+ result = m_client.load_terms_from_csv_file(
310
356
  glossary_name,
311
357
  file_name,
312
358
  file_path=file_path,
@@ -326,13 +372,13 @@ def import_terms(
326
372
  m_client.close_session()
327
373
 
328
374
 
329
- @click.command("export-terms")
375
+ @click.command("export-terms-csv")
330
376
  @click.option(
331
377
  "--glossary_guid",
332
378
  help="GUID of Glossary to export",
333
379
  required=True,
334
380
  )
335
- @click.option("--file_name", help="Path of CSV file", required=True)
381
+ @click.option("--file_name", help="Name of CSV file", required=True)
336
382
  @click.option(
337
383
  "--file_path", help="Path of CSV file", default=EGERIA_GLOSSARY_PATH, required=False
338
384
  )
@@ -343,7 +389,7 @@ def import_terms(
343
389
  @click.option("--userid", default=EGERIA_USER, help="Egeria user")
344
390
  @click.option("--password", default=EGERIA_USER_PASSWORD, help="Egeria user password")
345
391
  @click.option("--timeout", default=60, help="Number of seconds to wait")
346
- def export_terms(
392
+ def export_terms_csv(
347
393
  glossary_guid: str, file_name, file_path, server, url, userid, password, timeout
348
394
  ):
349
395
  """Export the glossary specified"""
@@ -360,3 +406,107 @@ def export_terms(
360
406
  print_exception_response(e)
361
407
  finally:
362
408
  m_client.close_session()
409
+
410
+
411
+ @click.command("create-category")
412
+ @click.option("--name", help="Name of glossary Category", required=True)
413
+ @click.option("--glossary_name", help="Glossary name", required=True)
414
+ @click.option(
415
+ "--description",
416
+ help="Description of Category",
417
+ default="A description goes here",
418
+ )
419
+ @click.option(
420
+ "--is_root",
421
+ help="Is this a root category?",
422
+ default=True,
423
+ is_flag=True,
424
+ )
425
+ @click.option("--server", default=EGERIA_VIEW_SERVER, help="Egeria view server to use.")
426
+ @click.option(
427
+ "--url", default=EGERIA_VIEW_SERVER_URL, help="URL of Egeria platform to connect to"
428
+ )
429
+ @click.option("--userid", default=EGERIA_USER, help="Egeria user")
430
+ @click.option("--password", default=EGERIA_USER_PASSWORD, help="Egeria user password")
431
+ @click.option("--timeout", default=60, help="Number of seconds to wait")
432
+ def create_category(
433
+ server: str,
434
+ url: str,
435
+ userid: str,
436
+ password: str,
437
+ timeout: int,
438
+ name: str,
439
+ glossary_name: str,
440
+ description: str,
441
+ is_root: bool,
442
+ ) -> None:
443
+ """Create a new Glossary Category"""
444
+
445
+ try:
446
+ m_client = EgeriaTech(server, url, userid, password)
447
+ token = m_client.create_egeria_bearer_token()
448
+
449
+ existing_glossary = m_client.find_glossaries(glossary_name)
450
+ if type(existing_glossary) is str:
451
+ click.echo(existing_glossary)
452
+ sys.exit(0)
453
+ if type(existing_glossary) is list and len(existing_glossary) == 1:
454
+ q_name = existing_glossary["glossaryProperties"]["qualifiedName"]
455
+ glossary_guid = existing_glossary["elementHeader"]["guid"]
456
+ category_guid = m_client.create_category(glossary_guid,name,description, is_root)
457
+ print(f"New categry \'{name}\' created with id of \'{category_guid}\'")
458
+
459
+ except (InvalidParameterException, PropertyServerException) as e:
460
+ print_exception_response(e)
461
+ finally:
462
+ m_client.close_session()
463
+
464
+
465
+ @click.command("update-category")
466
+ @click.option("--server", default=EGERIA_VIEW_SERVER, help="Egeria view server to use")
467
+ @click.option(
468
+ "--url", default=EGERIA_VIEW_SERVER_URL, help="URL of Egeria platform to connect to"
469
+ )
470
+ @click.option("--userid", default=EGERIA_USER, help="Egeria user")
471
+ @click.option("--password", default=EGERIA_USER_PASSWORD, help="Egeria user password")
472
+ @click.option("--timeout", default=60, help="Number of seconds to wait")
473
+ @click.argument("category-guid")
474
+ @click.option("--name", help="Name of glossary Category", required=True)
475
+ @click.option("--glossary_name", help="Glossary name", required=True)
476
+ @click.option("--description", help="Description of Category", default="A description goes here")
477
+ def update_category(category_guid, name, description, server, url, userid, password, timeout, ):
478
+ """Delete the glossary specified"""
479
+ m_client = EgeriaTech(server, url, user_id=userid, user_pwd=password)
480
+ token = m_client.create_egeria_bearer_token()
481
+ try:
482
+ m_client.update_category(category_guid, name, description)
483
+
484
+ click.echo(f"Updated glossary: {category_guid}")
485
+
486
+ except (InvalidParameterException, PropertyServerException) as e:
487
+ print_exception_response(e)
488
+ finally:
489
+ m_client.close_session()
490
+
491
+ @click.command("delete-category")
492
+ @click.option("--server", default=EGERIA_VIEW_SERVER, help="Egeria view server to use")
493
+ @click.option(
494
+ "--url", default=EGERIA_VIEW_SERVER_URL, help="URL of Egeria platform to connect to"
495
+ )
496
+ @click.option("--userid", default=EGERIA_USER, help="Egeria user")
497
+ @click.option("--password", default=EGERIA_USER_PASSWORD, help="Egeria user password")
498
+ @click.option("--timeout", default=60, help="Number of seconds to wait")
499
+ @click.argument("category-guid")
500
+ def delete_category(server, url, userid, password, timeout, category_guid):
501
+ """Delete the glossary specified"""
502
+ m_client = EgeriaTech(server, url, user_id=userid, user_pwd=password)
503
+ token = m_client.create_egeria_bearer_token()
504
+ try:
505
+ m_client.delete_category(category_guid)
506
+
507
+ click.echo(f"Deleted glossary: {category_guid}")
508
+
509
+ except (InvalidParameterException, PropertyServerException) as e:
510
+ print_exception_response(e)
511
+ finally:
512
+ m_client.close_session()
@@ -13,27 +13,27 @@ import time
13
13
 
14
14
  from rich import box
15
15
  from rich.console import Console
16
- from rich.prompt import Prompt
17
16
  from rich.markdown import Markdown
17
+ from rich.prompt import Prompt
18
18
  from rich.table import Table
19
19
  from rich.text import Text
20
20
 
21
21
  from pyegeria import (
22
+ AssetCatalog,
22
23
  InvalidParameterException,
23
24
  PropertyServerException,
24
25
  UserNotAuthorizedException,
25
26
  print_exception_response,
26
- AssetCatalog,
27
27
  )
28
28
 
29
29
  EGERIA_METADATA_STORE = os.environ.get("EGERIA_METADATA_STORE", "active-metadata-store")
30
30
  EGERIA_KAFKA_ENDPOINT = os.environ.get("KAFKA_ENDPOINT", "localhost:9092")
31
31
  EGERIA_PLATFORM_URL = os.environ.get("EGERIA_PLATFORM_URL", "https://localhost:9443")
32
- EGERIA_VIEW_SERVER = os.environ.get("VIEW_SERVER", "view-server")
32
+ EGERIA_VIEW_SERVER = os.environ.get("EGERIA_VIEW_SERVER", "view-server")
33
33
  EGERIA_VIEW_SERVER_URL = os.environ.get(
34
34
  "EGERIA_VIEW_SERVER_URL", "https://localhost:9443"
35
35
  )
36
- EGERIA_INTEGRATION_DAEMON = os.environ.get("INTEGRATION_DAEMON", "integration-daemon")
36
+ EGERIA_INTEGRATION_DAEMON = os.environ.get("EGERIA_INTEGRATION_DAEMON", "integration-daemon")
37
37
  EGERIA_ADMIN_USER = os.environ.get("ADMIN_USER", "garygeeke")
38
38
  EGERIA_ADMIN_PASSWORD = os.environ.get("ADMIN_PASSWORD", "secret")
39
39
  EGERIA_USER = os.environ.get("EGERIA_USER", "erinoverview")
@@ -99,8 +99,11 @@ def display_assets(
99
99
  header = element["elementHeader"]
100
100
  nested = element.get("matchingElements", "---")
101
101
  qualified_name = properties["qualifiedName"]
102
- display_name = Text(f"{properties.get("displayName", "---")}\n\n{qualified_name}\n\n"
103
- f"{header['guid']}", justify="center")
102
+ display_name = Text(
103
+ f"{properties.get("displayName", "---")}\n\n{qualified_name}\n\n"
104
+ f"{header['guid']}",
105
+ justify="center",
106
+ )
104
107
 
105
108
  type_name = header["type"]["typeName"]
106
109
  tech_type = properties.get("deployedImplementationType", "---")