pyegeria 0.8.4.18__py3-none-any.whl → 0.8.4.20__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 (75) hide show
  1. {examples/widgets → commands}/cli/egeria.py +43 -43
  2. {examples/widgets → commands}/cli/egeria_cat.py +16 -16
  3. commands/cli/egeria_my.py +269 -0
  4. {examples/widgets → commands}/cli/egeria_ops.py +22 -23
  5. {examples/widgets → commands}/cli/egeria_tech.py +13 -13
  6. commands/ops/engine_actions.py +131 -0
  7. {examples/widgets → commands}/ops/integration_daemon_actions.py +33 -33
  8. commands/ops/refresh_integration_daemon.py +85 -0
  9. commands/ops/restart_integration_daemon.py +86 -0
  10. pyegeria/runtime_manager_omvs.py +951 -263
  11. {pyegeria-0.8.4.18.dist-info → pyegeria-0.8.4.20.dist-info}/METADATA +1 -1
  12. pyegeria-0.8.4.20.dist-info/RECORD +99 -0
  13. pyegeria-0.8.4.20.dist-info/entry_points.txt +60 -0
  14. examples/widgets/cli/egeria_my.py +0 -161
  15. examples/widgets/ops/engine_actions.py +0 -83
  16. examples/widgets/ops/refresh_integration_daemon.py +0 -73
  17. examples/widgets/ops/restart_integration_daemon.py +0 -73
  18. pyegeria-0.8.4.18.dist-info/RECORD +0 -99
  19. pyegeria-0.8.4.18.dist-info/entry_points.txt +0 -60
  20. {examples/widgets → commands}/cat/README.md +0 -0
  21. {examples/widgets → commands}/cat/__init__.py +0 -0
  22. {examples/widgets → commands}/cat/get_asset_graph.py +0 -0
  23. {examples/widgets → commands}/cat/get_collection.py +0 -0
  24. {examples/widgets → commands}/cat/get_project_dependencies.py +0 -0
  25. {examples/widgets → commands}/cat/get_project_structure.py +0 -0
  26. {examples/widgets → commands}/cat/get_tech_type_elements.py +0 -0
  27. {examples/widgets → commands}/cat/get_tech_type_template.py +0 -0
  28. {examples/widgets → commands}/cat/list_archives.py +0 -0
  29. {examples/widgets → commands}/cat/list_assets.py +0 -0
  30. {examples/widgets → commands}/cat/list_cert_types.py +0 -0
  31. {examples/widgets → commands}/cat/list_glossary.py +0 -0
  32. {examples/widgets → commands}/cat/list_projects.py +0 -0
  33. {examples/widgets → commands}/cat/list_relationships.py +0 -0
  34. {examples/widgets → commands}/cat/list_tech_types.py +0 -0
  35. {examples/widgets → commands}/cat/list_todos.py +0 -0
  36. {examples/widgets → commands}/cat/list_user_ids.py +0 -0
  37. {examples/widgets → commands}/cli/__init__.py +0 -0
  38. {examples/widgets → commands}/cli/ops_config.py +0 -0
  39. {examples/widgets → commands}/my/README.md +0 -0
  40. {examples/widgets → commands}/my/__init__.py +0 -0
  41. {examples/widgets → commands}/my/list_my_profile.py +0 -0
  42. {examples/widgets → commands}/my/list_my_roles.py +0 -0
  43. {examples/widgets → commands}/my/monitor_my_todos.py +0 -0
  44. {examples/widgets → commands}/my/monitor_open_todos.py +0 -0
  45. {examples/widgets → commands}/my/my_profile_actions.py +0 -0
  46. {examples/widgets → commands}/my/todo_actions.py +0 -0
  47. {examples/widgets → commands}/ops/README.md +0 -0
  48. {examples/widgets → commands}/ops/__init__.py +0 -0
  49. {examples/widgets → commands}/ops/list_catalog_targets.py +0 -0
  50. {examples/widgets → commands}/ops/load_archive.py +0 -0
  51. {examples/widgets → commands}/ops/monitor_asset_events.py +0 -0
  52. {examples/widgets → commands}/ops/monitor_coco_status.py +0 -0
  53. {examples/widgets → commands}/ops/monitor_engine_activity.py +0 -0
  54. {examples/widgets → commands}/ops/monitor_engine_activity_c.py +0 -0
  55. {examples/widgets → commands}/ops/monitor_gov_eng_status.py +0 -0
  56. {examples/widgets → commands}/ops/monitor_integ_daemon_status.py +0 -0
  57. {examples/widgets → commands}/ops/monitor_platform_status.py +0 -0
  58. {examples/widgets → commands}/ops/monitor_server_list.py +0 -0
  59. {examples/widgets → commands}/ops/monitor_server_status.py +0 -0
  60. {examples/widgets → commands}/tech/README.md +0 -0
  61. {examples/widgets → commands}/tech/__init__.py +0 -0
  62. {examples/widgets → commands}/tech/get_element_info.py +0 -0
  63. {examples/widgets → commands}/tech/get_guid_info.py +0 -0
  64. {examples/widgets → commands}/tech/get_tech_details.py +0 -0
  65. {examples/widgets → commands}/tech/list_asset_types.py +0 -0
  66. {examples/widgets → commands}/tech/list_elements.py +0 -0
  67. {examples/widgets → commands}/tech/list_elements_x.py +0 -0
  68. {examples/widgets → commands}/tech/list_registered_services.py +0 -0
  69. {examples/widgets → commands}/tech/list_related_specification.py +0 -0
  70. {examples/widgets → commands}/tech/list_relationship_types.py +0 -0
  71. {examples/widgets → commands}/tech/list_tech_templates.py +0 -0
  72. {examples/widgets → commands}/tech/list_valid_metadata_values.py +0 -0
  73. {examples/widgets → commands}/tech/x_list_related_elements.py +0 -0
  74. {pyegeria-0.8.4.18.dist-info → pyegeria-0.8.4.20.dist-info}/LICENSE +0 -0
  75. {pyegeria-0.8.4.18.dist-info → pyegeria-0.8.4.20.dist-info}/WHEEL +0 -0
@@ -50,15 +50,18 @@ class RuntimeManager(Client):
50
50
  "Default Local OMAG Server Platform" # this from the core content archive
51
51
  )
52
52
 
53
+ #
54
+ # Cohorts
55
+ #
53
56
  async def _async_connect_to_cohort(
54
57
  self,
55
58
  server_guid: str,
56
59
  cohort_name: str,
57
60
  ) -> None:
58
61
  """A new server needs to register the metadataCollectionId for its metadata repository with the other servers
59
- in the open metadata repository. It only needs to do this once and uses a timestamp to record that the
60
- registration event has been sent. If the server has already registered in the past, it sends a
61
- reregistration request. Async version.
62
+ in the open metadata repository. It only needs to do this once and uses a timestamp to record that the
63
+ registration event has been sent. If the server has already registered in the past, it sends a
64
+ reregistration request. Async version.
62
65
 
63
66
  https://egeria-project.org/concepts/cohort-member/
64
67
 
@@ -94,9 +97,9 @@ class RuntimeManager(Client):
94
97
  cohort_name: str,
95
98
  ) -> None:
96
99
  """A new server needs to register the metadataCollectionId for its metadata repository with the other servers
97
- in the open metadata repository. It only needs to do this once and uses a timestamp to record that the
98
- registration event has been sent. If the server has already registered in the past, it sends a
99
- reregistration request.
100
+ in the open metadata repository. It only needs to do this once and uses a timestamp to record that the
101
+ registration event has been sent. If the server has already registered in the past, it sends a
102
+ reregistration request.
100
103
 
101
104
  https://egeria-project.org/concepts/cohort-member/
102
105
 
@@ -128,7 +131,9 @@ class RuntimeManager(Client):
128
131
  cohort_name: str,
129
132
  ) -> None:
130
133
  """Disconnect communications from a specific cohort. Async version.
134
+
131
135
  https://egeria-project.org/concepts/cohort-member/
136
+
132
137
  Parameters
133
138
  ----------
134
139
  server_guid : str
@@ -155,22 +160,842 @@ class RuntimeManager(Client):
155
160
  await self._async_make_request("GET", url)
156
161
  return
157
162
 
158
- def disconnect_from_cohort(
159
- self,
160
- server_guid: str,
161
- cohort_name: str,
162
- ) -> None:
163
- """Disconnect communications from a specific cohort.
164
- https://egeria-project.org/concepts/cohort-member/
163
+ def disconnect_from_cohort(
164
+ self,
165
+ server_guid: str,
166
+ cohort_name: str,
167
+ ) -> None:
168
+ """Disconnect communications from a specific cohort.
169
+
170
+ https://egeria-project.org/concepts/cohort-member/
171
+
172
+ Parameters
173
+ ----------
174
+ server_guid: str
175
+ Identity of the server to act on.
176
+ cohort_name: str
177
+ Name of the cohort to join
178
+
179
+ Returns
180
+ -------
181
+ None
182
+
183
+ Raises
184
+ ------
185
+ InvalidParameterException
186
+ PropertyServerException
187
+ UserNotAuthorizedException
188
+
189
+ """
190
+ loop = asyncio.get_event_loop()
191
+ loop.run_until_complete(
192
+ self._async_disconnect_from_cohort(server_guid, cohort_name)
193
+ )
194
+ return
195
+
196
+ async def _async_unregister_from_cohort(
197
+ self,
198
+ server_guid: str,
199
+ cohort_name: str,
200
+ ) -> None:
201
+ """Unregister from a specific cohort and disconnect from cohort communications. Async version.
202
+
203
+ https://egeria-project.org/concepts/cohort-member/
204
+
205
+ Parameters
206
+ ----------
207
+ server_guid : str
208
+ Identity of the server to act on.
209
+ cohort_name : str
210
+ Name of the cohort to join
211
+
212
+ Returns
213
+ -------
214
+ None
215
+
216
+ Raises
217
+ ------
218
+ InvalidParameterException
219
+ PropertyServerException
220
+ UserNotAuthorizedException
221
+
222
+ """
223
+
224
+ url = (
225
+ f"{self.cur_command_root}/cohort-members/"
226
+ f"{server_guid}/cohorts/{cohort_name}/unregister"
227
+ )
228
+ await self._async_make_request("GET", url)
229
+ return
230
+
231
+ def unregister_from_cohort(
232
+ self,
233
+ server_guid: str,
234
+ cohort_name: str,
235
+ ) -> None:
236
+ """Unregister from a specific cohort and disconnect from cohort communications.
237
+ https://egeria-project.org/concepts/cohort-member/
238
+
239
+ Parameters
240
+ ----------
241
+ server_guid: str
242
+ Identity of the server to act on.
243
+ cohort_name: str
244
+ Name of the cohort to join
245
+
246
+ Returns
247
+ -------
248
+ None
249
+
250
+ Raises
251
+ ------
252
+ InvalidParameterException
253
+ PropertyServerException
254
+ UserNotAuthorizedException
255
+
256
+ """
257
+ loop = asyncio.get_event_loop()
258
+ loop.run_until_complete(
259
+ self._async_disconnect_from_cohort(server_guid, cohort_name)
260
+ )
261
+ return
262
+
263
+ #
264
+ # Governance Engines
265
+ #
266
+
267
+ async def _async_refresh_gov_eng_config(
268
+ self,
269
+ server_guid: str,
270
+ gov_engine_name: str = None,
271
+ ) -> None:
272
+ """Request that the governance engine refresh its configuration by calling the metadata server. This request is
273
+ useful if the metadata server has an outage, particularly while the governance server is initializing.
274
+ This request just ensures that the latest configuration is in use. Async version.
275
+
276
+ https://egeria-project.org/concepts/governance-engine-definition/
277
+
278
+ Parameters
279
+ ----------
280
+ server_guid : str
281
+ Identity of the server to act on.
282
+ gov_engine_name : str, Opt
283
+ Name of the governance engine to refresh. If None, then all governance engines will be refreshed.
284
+
285
+ Returns
286
+ -------
287
+ None
288
+
289
+ Raises
290
+ ------
291
+ InvalidParameterException
292
+ PropertyServerException
293
+ UserNotAuthorizedException
294
+
295
+ """
296
+
297
+ url = (
298
+ f"{self.cur_command_root}/engine-hosts/"
299
+ f"{server_guid}/governance_engines/{gov_engine_name}/refresh-config"
300
+ )
301
+ await self._async_make_request("GET", url)
302
+ return
303
+
304
+ def refresh_gov_eng_config(
305
+ self,
306
+ server_guid: str,
307
+ gov_engine_name: str = None,
308
+ ) -> None:
309
+ """Request that the governance engine refresh its configuration by calling the metadata server. This request is
310
+ useful if the metadata server has an outage, particularly while the governance server is initializing.
311
+ This request just ensures that the latest configuration is in use.
312
+
313
+ https://egeria-project.org/concepts/governance-engine-definition/
314
+
315
+ Parameters
316
+ ----------
317
+ server_guid : str
318
+ Identity of the server to act on.
319
+ gov_engine_name : str
320
+ Name of the governance engine to refresh. If None, then all governance engines will be refreshed.
321
+
322
+ Returns
323
+ -------
324
+ None
325
+
326
+ Raises
327
+ ------
328
+ InvalidParameterException
329
+ PropertyServerException
330
+ UserNotAuthorizedException
331
+
332
+ """
333
+ loop = asyncio.get_event_loop()
334
+ loop.run_until_complete(
335
+ self._async_refresh_gov_eng_config(server_guid, gov_engine_name)
336
+ )
337
+ return
338
+
339
+ #
340
+ # Integration Connector Methods
341
+ #
342
+ async def _async_get_integ_connector_config_properties(
343
+ self,
344
+ server_guid: str,
345
+ connector_name: str,
346
+ ) -> dict | str:
347
+ """Retrieve the configuration properties of the named integration connector running in the integration daemon.
348
+ Async version.
349
+
350
+ https://egeria-project.org/concepts/integration-connector/
351
+
352
+ Parameters
353
+ ----------
354
+ server_guid : str
355
+ Identity of the server to act on.
356
+ connector_name : str
357
+ Name of the integration connector to retrieve properties for.
358
+
359
+ Returns
360
+ -------
361
+ Dict of the connector configuration properties.
362
+
363
+ Raises
364
+ ------
365
+ InvalidParameterException
366
+ PropertyServerException
367
+ UserNotAuthorizedException
368
+
369
+ """
370
+
371
+ url = (
372
+ f"{self.cur_command_root}/integration-daemons/"
373
+ f"{server_guid}/integration-connectors/{connector_name}/configuration-properties"
374
+ )
375
+ response = await self._async_make_request("GET", url)
376
+ return response.json().get("properties", "No pproperties found")
377
+
378
+ def get_integ_connector_config_properties(
379
+ self,
380
+ server_guid: str,
381
+ connector_name: str,
382
+ ) -> dict | str:
383
+ """Retrieve the configuration properties of the named integration connector running in the integration daemon.
384
+ Async version.
385
+
386
+ https://egeria-project.org/concepts/integration-connector/
387
+
388
+ Parameters
389
+ ----------
390
+ server_guid : str
391
+ Identity of the server to act on.
392
+ connector_name : str
393
+ Name of the integration connector to retrieve properties for.
394
+ Returns
395
+ -------
396
+ None
397
+
398
+ Raises
399
+ ------
400
+ InvalidParameterException
401
+ PropertyServerException
402
+ UserNotAuthorizedException
403
+
404
+ """
405
+ loop = asyncio.get_event_loop()
406
+ response = loop.run_until_complete(
407
+ self._async_get_integ_connector_config_properties(
408
+ server_guid, connector_name
409
+ )
410
+ )
411
+ return response
412
+
413
+ async def _async_update_connector_connection(
414
+ self,
415
+ server_guid: str,
416
+ connector_name: str,
417
+ merge_update: bool = False,
418
+ config_properties: dict = None,
419
+ ) -> None:
420
+ """Update the configuration properties of the integration connectors, or specific integration connector
421
+ if a connector name is supplied. This update is in memory and will not persist over a server restart.
422
+ Async version.
423
+
424
+ https://egeria-project.org/concepts/integration-connector/
425
+
426
+ Parameters
427
+ ----------
428
+ server_guid : str
429
+ Identity of the server to act on.
430
+ connector_name : str
431
+ Name of the integration connector to retrieve properties for.
432
+ merge_update : bool, optional, default = False
433
+ Specifies whether properties should be over-written or completely replace existing properties. If False
434
+ the values will be replaced; if True, they will be merged.
435
+ config_properties : dict, optional, default = None
436
+ A dict of Property Name, Property Value pairs.
437
+
438
+ Returns
439
+ -------
440
+ None
441
+
442
+ Raises
443
+ ------
444
+ InvalidParameterException
445
+ PropertyServerException
446
+ UserNotAuthorizedException
447
+
448
+ """
449
+
450
+ url = (
451
+ f"{self.cur_command_root}/integration-daemons/"
452
+ f"{server_guid}/integration-connectors/{connector_name}/configuration-properties"
453
+ )
454
+
455
+ body = {
456
+ "class": "ConnectorConfigPropertiesRequestBody",
457
+ "connectorName": connector_name,
458
+ "mergeUpdate": merge_update,
459
+ "configurationProperties": config_properties,
460
+ }
461
+ await self._async_make_request("POST", url, body)
462
+ return
463
+
464
+ def update_connector_connection(
465
+ self,
466
+ server_guid: str,
467
+ connector_name: str,
468
+ merge_update: bool = False,
469
+ config_properties: dict = None,
470
+ ) -> None:
471
+ """Update the configuration properties of the integration connectors, or specific integration connector
472
+ if a connector name is supplied. This update is in memory and will not persist over a server restart.
473
+
474
+ https://egeria-project.org/concepts/integration-connector/
475
+
476
+ Parameters
477
+ ----------
478
+ server_guid : str
479
+ Identity of the server to act on.
480
+ connector_name : str
481
+ Name of the integration connector to retrieve properties for.
482
+ merge_update : bool, optional, default = False
483
+ Specifies whether properties should be over-written or completely replace existing properties. If False
484
+ the values will be replaced; if True, they will be merged.
485
+ config_properties : dict, optional, default = None
486
+ A dict of Property Name, Property Value pairs.
487
+
488
+ Returns
489
+ -------
490
+ None
491
+
492
+ Raises
493
+ ------
494
+ InvalidParameterException
495
+ PropertyServerException
496
+ UserNotAuthorizedException
497
+
498
+ """
499
+ loop = asyncio.get_event_loop()
500
+ loop.run_until_complete(
501
+ self._async_update_connector_connection(
502
+ server_guid, connector_name, merge_update, config_properties
503
+ )
504
+ )
505
+ return
506
+
507
+ async def _async_update_endpoint_address(
508
+ self, server_guid: str, connector_name: str, endpoint_address: str
509
+ ) -> None:
510
+ """Update the endpoint network address for a specific integration connector. Typically used for discovery.
511
+ This update is in memory and will not persist over a server restart. Async version.
512
+
513
+ https://egeria-project.org/concepts/integration-connector/
514
+
515
+ Parameters
516
+ ----------
517
+ server_guid : str
518
+ Identity of the server to act on.
519
+ connector_name : str
520
+ Name of the integration connector to retrieve properties for.
521
+ endpoint_address : str
522
+ Specifies the new network endpoint address. This is the full address string - can include protocol,
523
+ port, operation, etc.
524
+
525
+ Returns
526
+ -------
527
+ None
528
+
529
+ Raises
530
+ ------
531
+ InvalidParameterException
532
+ PropertyServerException
533
+ UserNotAuthorizedException
534
+
535
+ """
536
+
537
+ url = (
538
+ f"{self.cur_command_root}/integration-daemons/"
539
+ f"{server_guid}/integration-connectors/{connector_name}/endpoint-network-address"
540
+ )
541
+
542
+ body = {
543
+ "class": "StringRequestBody",
544
+ "string": endpoint_address,
545
+ }
546
+ await self._async_make_request("POST", url, body)
547
+ return
548
+
549
+ def update_endpoint_address(
550
+ self, server_guid: str, connector_name: str, endpoint_address: str
551
+ ) -> None:
552
+ """Update the endpoint network address for a specific integration connector. Typically used for discovery.
553
+ This update is in memory and will not persist over a server restart. Async version.
554
+
555
+ https://egeria-project.org/concepts/integration-connector/
556
+
557
+ Parameters
558
+ ----------
559
+ server_guid : str
560
+ Identity of the server to act on.
561
+ connector_name : str
562
+ Name of the integration connector to retrieve properties for.
563
+ endpoint_address : str
564
+ Specifies the new network endpoint address. This is the full address string - can include protocol,
565
+ port, operation, etc.
566
+
567
+ Returns
568
+ -------
569
+ None
570
+
571
+ Raises
572
+ ------
573
+ InvalidParameterException
574
+ PropertyServerException
575
+ UserNotAuthorizedException
576
+
577
+ """
578
+ loop = asyncio.get_event_loop()
579
+ loop.run_until_complete(
580
+ self._async_update_endpoint_address(
581
+ server_guid, connector_name, endpoint_address
582
+ )
583
+ )
584
+ return
585
+
586
+ async def _async_refresh_integration_connectors(
587
+ self, server_guid: str, connector_name: str = None
588
+ ) -> None:
589
+ """Issue a refresh() request on all connectors running in the integration daemon, or a specific connector if
590
+ the connector name is specified. Async version.
591
+
592
+ https://egeria-project.org/concepts/integration-connector/
593
+
594
+ Parameters
595
+ ----------
596
+ server_guid : str
597
+ Identity of the server to act on.
598
+ connector_name : str, opt
599
+ Name of the integration connector to retrieve properties for. If None, all connectors refreshed.
600
+
601
+ Returns
602
+ -------
603
+ None
604
+
605
+ Raises
606
+ ------
607
+ InvalidParameterException
608
+ PropertyServerException
609
+ UserNotAuthorizedException
610
+
611
+ """
612
+
613
+ url = (
614
+ f"{self.cur_command_root}/integration-daemons/"
615
+ f"{server_guid}/integration-connectors/refresh"
616
+ )
617
+
618
+ body = {
619
+ "class": "NameRequestBody",
620
+ "string": connector_name,
621
+ }
622
+ await self._async_make_request("POST", url, body_slimmer(body))
623
+ return
624
+
625
+ def refresh_integration_connectors(
626
+ self, server_guid: str, connector_name: str = None
627
+ ) -> None:
628
+ """Issue a refresh() request on all connectors running in the integration daemon, or a specific connector if
629
+ the connector name is specified.
630
+
631
+ https://egeria-project.org/concepts/integration-connector/
632
+
633
+ Parameters
634
+ ----------
635
+ server_guid : str
636
+ Identity of the server to act on.
637
+ connector_name : str, opt
638
+ Name of the integration connector to retrieve properties for. If None, all connectors refreshed.
639
+
640
+ Returns
641
+ -------
642
+ None
643
+
644
+ Raises
645
+ ------
646
+ InvalidParameterException
647
+ PropertyServerException
648
+ UserNotAuthorizedException
649
+
650
+ """
651
+ loop = asyncio.get_event_loop()
652
+ loop.run_until_complete(
653
+ self._async_refresh_integration_connectors(server_guid, connector_name)
654
+ )
655
+ return
656
+
657
+ async def _async_restart_integration_connectors(
658
+ self, server_guid: str, connector_name: str = None
659
+ ) -> None:
660
+ """Issue a restart() request on all connectors running in the integration daemon, or a specific connector if
661
+ the connector name is specified. Async version.
662
+
663
+ https://egeria-project.org/concepts/integration-connector/
664
+
665
+ Parameters
666
+ ----------
667
+ server_guid : str
668
+ Identity of the server to act on.
669
+ connector_name : str, opt
670
+ Name of the integration connector to retrieve properties for. If None, all connectors restarted.
671
+
672
+ Returns
673
+ -------
674
+ None
675
+
676
+ Raises
677
+ ------
678
+ InvalidParameterException
679
+ PropertyServerException
680
+ UserNotAuthorizedException
681
+
682
+ """
683
+
684
+ url = (
685
+ f"{self.cur_command_root}/integration-daemons/"
686
+ f"{server_guid}/integration-connectors/restart"
687
+ )
688
+
689
+ body = {
690
+ "class": "NameRequestBody",
691
+ "string": connector_name,
692
+ }
693
+ await self._async_make_request("POST", url, body_slimmer(body))
694
+ return
695
+
696
+ def restart_integration_connectors(
697
+ self, server_guid: str, connector_name: str = None
698
+ ) -> None:
699
+ """Issue a restart() request on all connectors running in the integration daemon, or a specific connector if
700
+ the connector name is specified.
701
+
702
+ https://egeria-project.org/concepts/integration-connector/
703
+
704
+ Parameters
705
+ ----------
706
+ server_guid : str
707
+ Identity of the server to act on.
708
+ connector_name : str, opt
709
+ Name of the integration connector to retrieve properties for. If None, all connectors restarted.
710
+
711
+ Returns
712
+ -------
713
+ None
714
+
715
+ Raises
716
+ ------
717
+ InvalidParameterException
718
+ PropertyServerException
719
+ UserNotAuthorizedException
720
+
721
+ """
722
+ loop = asyncio.get_event_loop()
723
+ loop.run_until_complete(
724
+ self._async_restart_integration_connectors(server_guid, connector_name)
725
+ )
726
+ return
727
+
728
+ async def _async_refresh_integ_group_config(
729
+ self, server_guid: str, integ_group_name: str = None
730
+ ) -> None:
731
+ """Request that the integration group refresh its configuration by calling the metadata access server.
732
+ Changes to the connector configuration will result in the affected connectors being restarted.
733
+ This request is useful if the metadata access server has an outage, particularly while the integration
734
+ daemon is initializing. This request just ensures that the latest configuration is in use. Async version.
735
+
736
+ https://egeria-project.org/concepts/integration-connector/
737
+
738
+ Parameters
739
+ ----------
740
+ server_guid : str
741
+ Identity of the server to act on.
742
+ integ_group_name : str, opt, default = None
743
+ Name of the integration group to refresh. If None, all groups are refreshed.
744
+
745
+ Returns
746
+ -------
747
+ None
748
+
749
+ Raises
750
+ ------
751
+ InvalidParameterException
752
+ PropertyServerException
753
+ UserNotAuthorizedException
754
+
755
+ """
756
+
757
+ url = (
758
+ f"{self.cur_command_root}/integration-daemons/"
759
+ f"{server_guid}/integration-groups/{integ_group_name}/refresh-config"
760
+ )
761
+
762
+ await self._async_make_request("GET", url)
763
+ return
764
+
765
+ def refresh_integ_group_config(
766
+ self, server_guid: str, integ_group_name: str = None
767
+ ) -> None:
768
+ """Request that the integration group refresh its configuration by calling the metadata access server.
769
+ Changes to the connector configuration will result in the affected connectors being restarted.
770
+ This request is useful if the metadata access server has an outage, particularly while the integration
771
+ daemon is initializing. This request just ensures that the latest configuration is in use.
772
+
773
+ https://egeria-project.org/concepts/integration-connector/
774
+
775
+ Parameters
776
+ ----------
777
+ server_guid : str
778
+ Identity of the server to act on.
779
+ integ_group_name : str, opt, default = None
780
+ Name of the integration group to refresh. If None, all groups are refreshed.
781
+
782
+ Returns
783
+ -------
784
+ None
785
+
786
+ Raises
787
+ ------
788
+ InvalidParameterException
789
+ PropertyServerException
790
+ UserNotAuthorizedException
791
+
792
+ """
793
+ loop = asyncio.get_event_loop()
794
+ loop.run_until_complete(
795
+ self._async_refresh_integ_group_config(server_guid, integ_group_name)
796
+ )
797
+ return
798
+
799
+ #
800
+ # Open Lineage & Archives
801
+ #
802
+ async def _async_publish_open_lineage_event(
803
+ self, server_guid: str, ol_event: dict
804
+ ) -> None:
805
+ """Send an Open Lineage event to the integration daemon. It will pass it on to the integration connectors that
806
+ have registered a listener for open lineage events. Async version.
807
+
808
+ https://egeria-project.org/features/lineage-management/overview/#the-openlineage-standard
809
+
810
+ Parameters
811
+ ----------
812
+ server_guid : str
813
+ Identity of the server to act on.
814
+ ol_event : dict
815
+ Dict containing the user specified Open Lineage event.
816
+
817
+ Returns
818
+ -------
819
+ None
820
+
821
+ Raises
822
+ ------
823
+ InvalidParameterException
824
+ PropertyServerException
825
+ UserNotAuthorizedException
826
+
827
+ """
828
+
829
+ url = (
830
+ f"{self.cur_command_root}/integration-daemons/"
831
+ f"{server_guid}/integration-daemons/{server_guid}/open-lineage-events/publish"
832
+ )
833
+
834
+ await self._async_make_request("POST", url, ol_event)
835
+ return
836
+
837
+ def publish_open_lineage_event(self, server_guid: str, ol_event: dict) -> None:
838
+ """Send an Open Lineage event to the integration daemon. It will pass it on to the integration connectors that
839
+ have registered a listener for open lineage events.
840
+
841
+ https://egeria-project.org/features/lineage-management/overview/#the-openlineage-standard
842
+
843
+ Parameters
844
+ ----------
845
+ server_guid : str
846
+ Identity of the server to act on.
847
+ ol_event : dict
848
+ Dict containing the user specified Open Lineage event.
849
+
850
+ Returns
851
+ -------
852
+ None
853
+
854
+ Raises
855
+ ------
856
+ InvalidParameterException
857
+ PropertyServerException
858
+ UserNotAuthorizedException
859
+
860
+ """
861
+ loop = asyncio.get_event_loop()
862
+ loop.run_until_complete(
863
+ self._async_publish_open_lineage_event(server_guid, ol_event)
864
+ )
865
+ return
866
+
867
+ async def _async_add_archive_content(
868
+ self, server_guid: str, archive_content: dict
869
+ ) -> None:
870
+ """An open metadata archive contains metadata types and instances.
871
+ This operation loads the supplied open metadata archive into the local repository. It can be used with OMAG
872
+ servers that are of type Open Metadata Store. Async version.
873
+
874
+ https://egeria-project.org/concepts/open-metadata-archives/
875
+
876
+ Parameters
877
+ ----------
878
+ server_guid : str
879
+ Identity of the server to act on.
880
+ archive_content : dict
881
+ A dict containing the content of the archive to load.
882
+
883
+ Returns
884
+ -------
885
+ None
886
+
887
+ Raises
888
+ ------
889
+ InvalidParameterException
890
+ PropertyServerException
891
+ UserNotAuthorizedException
892
+
893
+ """
894
+
895
+ url = (
896
+ f"{self.cur_command_root}/metadata-access-stores/{server_guid}/instance/load/open-metadata-archives/"
897
+ f"archive-content"
898
+ )
899
+
900
+ await self._async_make_request("POST", url, archive_content)
901
+ return
902
+
903
+ def add_archive_content(self, server_guid: str, archive_content: dict) -> None:
904
+ """An open metadata archive contains metadata types and instances.
905
+ This operation loads the supplied open metadata archive into the local repository. It can be used with OMAG
906
+ servers that are of type Open Metadata Store.
907
+
908
+ https://egeria-project.org/concepts/open-metadata-archives/
909
+
910
+ Parameters
911
+ ----------
912
+ server_guid : str
913
+ Identity of the server to act on.
914
+ archive_content : dict
915
+ A dict containing the content of the archive to load.
916
+
917
+ Returns
918
+ -------
919
+ None
920
+
921
+ Raises
922
+ ------
923
+ InvalidParameterException
924
+ PropertyServerException
925
+ UserNotAuthorizedException
926
+
927
+ """
928
+ loop = asyncio.get_event_loop()
929
+ loop.run_until_complete(
930
+ self._async_add_archive_content(server_guid, archive_content)
931
+ )
932
+ return
933
+
934
+ async def _async_add_archive_file(
935
+ self,
936
+ archive_file: str,
937
+ server_guid: str,
938
+ time_out: int = 60,
939
+ ) -> None:
940
+ """Add a new open metadata archive to running OMAG Server's repository.
941
+ An open metadata archive contains metadata types and instances. This operation loads an open metadata archive
942
+ that is stored in the named file. It can be used with OMAG servers that are of type Open Metadata Store.
943
+ Async version.
944
+
945
+ https://egeria-project.org/concepts/open-metadata-archives/
946
+
947
+ Parameters
948
+ ----------
949
+ archive_file: str
950
+ Open metadata archive file to load.
951
+ server_guid: str
952
+ GUID of the server to load the file into.
953
+ time_out: int, optional
954
+ Time out for the rest call.
955
+
956
+ Returns
957
+ -------
958
+ Response
959
+ None
960
+
961
+ Raises
962
+ ------
963
+ InvalidParameterException
964
+ PropertyServerException
965
+ UserNotAuthorizedException
966
+
967
+ """
968
+
969
+ url = f"{self.cur_command_root}/metadata-access-stores/{server_guid}/instance/load/open-metadata-archives/file"
970
+
971
+ await self._async_make_request(
972
+ "POST-DATA", url, archive_file, time_out=time_out
973
+ )
974
+ return
975
+
976
+ def add_archive_file(
977
+ self,
978
+ archive_file: str,
979
+ server_guid: str,
980
+ time_out: int = 60,
981
+ ) -> None:
982
+ """Add a new open metadata archive to running OMAG Server's repository.
983
+ An open metadata archive contains metadata types and instances. This operation loads an open metadata archive
984
+ that is stored in the named file. It can be used with OMAG servers that are of type Open Metadata Store.
985
+
986
+ https://egeria-project.org/concepts/open-metadata-archives/
987
+
165
988
  Parameters
166
989
  ----------
990
+ archive_file: str
991
+ Open metadata archive file to load.
167
992
  server_guid: str
168
- Identity of the server to act on.
169
- cohort_name: str
170
- Name of the cohort to join
993
+ GUID of the server to load the file into.
994
+ time_out: int, optional, default = 60 seconds
171
995
 
172
996
  Returns
173
997
  -------
998
+ Response
174
999
  None
175
1000
 
176
1001
  Raises
@@ -180,28 +1005,28 @@ class RuntimeManager(Client):
180
1005
  UserNotAuthorizedException
181
1006
 
182
1007
  """
1008
+
183
1009
  loop = asyncio.get_event_loop()
184
1010
  loop.run_until_complete(
185
- self._async_disconnect_from_cohort(server_guid, cohort_name)
1011
+ self._async_add_archive_file(archive_file, server_guid, time_out)
186
1012
  )
187
1013
  return
188
1014
 
189
- async def _async_unregister_from_cohort(
190
- self,
191
- server_guid: str,
192
- cohort_name: str,
193
- ) -> None:
194
- """Unregister from a specific cohort and disconnect from cohort communications. Async version.
195
- https://egeria-project.org/concepts/cohort-member/
1015
+ #
1016
+ # Server & Platform admin
1017
+ #
1018
+ async def _async_shutdown_and_unregister_server(self, server_guid: str) -> None:
1019
+ """Shutdown the named OMAG server. The server will also be removed from any open metadata repository cohorts
1020
+ it has registered with. Async version.
1021
+
196
1022
  Parameters
197
1023
  ----------
198
1024
  server_guid : str
199
1025
  Identity of the server to act on.
200
- cohort_name : str
201
- Name of the cohort to join
202
1026
 
203
1027
  Returns
204
1028
  -------
1029
+ Response
205
1030
  None
206
1031
 
207
1032
  Raises
@@ -212,30 +1037,24 @@ class RuntimeManager(Client):
212
1037
 
213
1038
  """
214
1039
 
215
- url = (
216
- f"{self.cur_command_root}/cohort-members/"
217
- f"{server_guid}/cohorts/{cohort_name}/unregister"
218
- )
219
- await self._async_make_request("GET", url)
1040
+ url = f"{self.cur_command_root}/omag-servers/{server_guid}"
1041
+
1042
+ await self._async_make_request("DELETE", url)
1043
+
220
1044
  return
221
1045
 
222
- def unregister_from_cohort(
223
- self,
224
- server_guid: str,
225
- cohort_name: str,
226
- ) -> None:
227
- """Unregister from a specific cohort and disconnect from cohort communications.
228
- https://egeria-project.org/concepts/cohort-member/
1046
+ def shutdown_and_unregister_server(self, server_guid: str) -> None:
1047
+ """Shutdown the named OMAG server. The server will also be removed from any open metadata repository cohorts
1048
+ it has registered with.
229
1049
 
230
1050
  Parameters
231
1051
  ----------
232
- server_guid: str
233
- Identity of the server to act on.
234
- cohort_name: str
235
- Name of the cohort to join
1052
+ server_guid : str
1053
+ Identity of the server to act on.
236
1054
 
237
1055
  Returns
238
1056
  -------
1057
+ Response
239
1058
  None
240
1059
 
241
1060
  Raises
@@ -246,28 +1065,19 @@ class RuntimeManager(Client):
246
1065
 
247
1066
  """
248
1067
  loop = asyncio.get_event_loop()
249
- loop.run_until_complete(
250
- self._async_disconnect_from_cohort(server_guid, cohort_name)
251
- )
1068
+ loop.run_until_complete(self._async_shutdown_and_unregister_server(server_guid))
252
1069
  return
253
1070
 
254
- async def _async_refresh_config(
255
- self,
256
- server_guid: str,
257
- gov_engine_name: str,
258
- ) -> None:
259
- """Request that the governance engine refresh its configuration by calling the metadata server. This request is
260
- useful if the metadata server has an outage, particularly while the governance server is initializing.
261
- This request just ensures that the latest configuration is in use. Async version.
1071
+ async def _async_activate_server_with_stored_config(self, server_guid: str) -> None:
1072
+ """Activate the named OMAG server using the appropriate configuration document found in the
1073
+ configuration store. Async version.
262
1074
 
263
- https://egeria-project.org/concepts/governance-engine-definition/
1075
+ https://egeria-project.org/concepts/configuration-document
264
1076
 
265
1077
  Parameters
266
1078
  ----------
267
1079
  server_guid : str
268
1080
  Identity of the server to act on.
269
- gov_engine_name : str
270
- Name of the governance engine to refresh.
271
1081
 
272
1082
  Returns
273
1083
  -------
@@ -281,30 +1091,21 @@ class RuntimeManager(Client):
281
1091
 
282
1092
  """
283
1093
 
284
- url = (
285
- f"{self.cur_command_root}/engine-hosts/"
286
- f"{server_guid}/governance_engines/{gov_engine_name}/refresh-config"
287
- )
288
- await self._async_make_request("GET", url)
1094
+ url = f"{self.cur_command_root}/omag-servers/{server_guid}/instance"
1095
+
1096
+ await self._async_make_request("POST", url)
289
1097
  return
290
1098
 
291
- def refresh_config(
292
- self,
293
- server_guid: str,
294
- gov_engine_name: str,
295
- ) -> None:
296
- """Request that the governance engine refresh its configuration by calling the metadata server. This request is
297
- useful if the metadata server has an outage, particularly while the governance server is initializing.
298
- This request just ensures that the latest configuration is in use.
1099
+ def activate_server_with_stored_config(self, server_guid: str) -> None:
1100
+ """Activate the named OMAG server using the appropriate configuration document found in the
1101
+ configuration store.
299
1102
 
300
- https://egeria-project.org/concepts/governance-engine-definition/
1103
+ https://egeria-project.org/concepts/configuration-document
301
1104
 
302
1105
  Parameters
303
1106
  ----------
304
1107
  server_guid : str
305
1108
  Identity of the server to act on.
306
- gov_engine_name : str
307
- Name of the governance engine to refresh.
308
1109
 
309
1110
  Returns
310
1111
  -------
@@ -319,30 +1120,22 @@ class RuntimeManager(Client):
319
1120
  """
320
1121
  loop = asyncio.get_event_loop()
321
1122
  loop.run_until_complete(
322
- self._async_refresh_config(server_guid, gov_engine_name)
1123
+ self._async_activate_server_with_stored_config(server_guid)
323
1124
  )
324
1125
  return
325
1126
 
326
- async def _async_get_config_properties(
327
- self,
328
- server_guid: str,
329
- connector_name: str,
330
- ) -> dict | str:
331
- """Retrieve the configuration properties of the named integration connector running in the integration daemon.
332
- Async version.
333
-
334
- https://egeria-project.org/concepts/integration-connector/
1127
+ async def _async_shutdown_server(self, server_guid: str) -> None:
1128
+ """Temporarily shutdown the named OMAG server. This server can be restarted as a later time. Async version.
335
1129
 
336
1130
  Parameters
337
1131
  ----------
338
1132
  server_guid : str
339
1133
  Identity of the server to act on.
340
- connector_name : str
341
- Name of the integration connector to retrieve properties for.
342
1134
 
343
1135
  Returns
344
1136
  -------
345
- Dict of the connector configuration properties.
1137
+ Response
1138
+ None
346
1139
 
347
1140
  Raises
348
1141
  ------
@@ -352,31 +1145,23 @@ class RuntimeManager(Client):
352
1145
 
353
1146
  """
354
1147
 
355
- url = (
356
- f"{self.cur_command_root}/integration-daemons/"
357
- f"{server_guid}/integration-connectors/{connector_name}/configuration-properties"
358
- )
359
- response = await self._async_make_request("GET", url)
360
- return response.json().get("properties", "No pproperties found")
1148
+ url = f"{self.cur_command_root}/omag-servers/{server_guid}/instance"
361
1149
 
362
- def get_config_properties(
363
- self,
364
- server_guid: str,
365
- connector_name: str,
366
- ) -> dict | str:
367
- """Retrieve the configuration properties of the named integration connector running in the integration daemon.
368
- Async version.
1150
+ await self._async_make_request("DELETE", url)
369
1151
 
370
- https://egeria-project.org/concepts/integration-connector/
1152
+ return
1153
+
1154
+ def shutdown_server(self, server_guid: str) -> None:
1155
+ """Temporarily shutdown the named OMAG server. This server can be restarted as a later time.
371
1156
 
372
1157
  Parameters
373
1158
  ----------
374
1159
  server_guid : str
375
1160
  Identity of the server to act on.
376
- connector_name : str
377
- Name of the integration connector to retrieve properties for.
1161
+
378
1162
  Returns
379
1163
  -------
1164
+ Response
380
1165
  None
381
1166
 
382
1167
  Raises
@@ -387,29 +1172,27 @@ class RuntimeManager(Client):
387
1172
 
388
1173
  """
389
1174
  loop = asyncio.get_event_loop()
390
- response = loop.run_until_complete(
391
- self._async_get_config_properties(server_guid, connector_name)
392
- )
393
- return response
1175
+ loop.run_until_complete(self._async_shutdown_server(server_guid))
1176
+ return
394
1177
 
395
- async def _async_get_platforms_by_name(
1178
+ def get_platforms_by_name(
396
1179
  self,
397
1180
  filter: str = None,
398
1181
  effective_time: str = None,
399
1182
  start_from: int = 0,
400
1183
  page_size: int = max_paging_size,
401
1184
  ) -> str | list:
402
- """Returns the list of platforms with a particular name. The name is specified in the filter. Async version.
1185
+ """Returns the list of platforms with a particular name. The name is specified in the filter.
1186
+
403
1187
  Parameters
404
1188
  ----------
405
1189
  filter : str, opt
406
1190
  Filter specifies the display name or qualified name of the platforms to return information for. If the
407
1191
  value is None, we will default to the default_platform_name that comes from the core content pack.
408
1192
  effective_time: str, optional
409
- Timeframe to return information for. Time format is "YYYY-MM-DDTHH:MM:SS" (ISO 8601).
1193
+ Timeframe to return information for. Time format is "YYYY-MM-DDTHH:MM:SS" (ISO 8601).
410
1194
  start_from : int, optional
411
1195
  The index from which to start fetching the engine actions. Default is 0.
412
-
413
1196
  page_size : int, optional
414
1197
  The maximum number of engine actions to fetch in a single request. Default is `max_paging_size`.
415
1198
 
@@ -423,33 +1206,23 @@ class RuntimeManager(Client):
423
1206
  InvalidParameterException
424
1207
  PropertyServerException
425
1208
  UserNotAuthorizedException
426
-
427
1209
  """
428
-
429
- if filter is None:
430
- filter = self.default_platform_name
431
-
432
- url = (
433
- f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/runtime-manager/platforms/by-name?"
434
- f"startFrom={start_from}&pageSize={page_size}"
1210
+ loop = asyncio.get_event_loop()
1211
+ response = loop.run_until_complete(
1212
+ self._async_get_platforms_by_name(
1213
+ filter, effective_time, start_from, page_size
1214
+ )
435
1215
  )
436
- if effective_time is not None:
437
- body = {"filter": filter, "effectiveTime": effective_time}
438
- else:
439
- body = {"filter": filter}
440
-
441
- response = await self._async_make_request("POST", url, body)
442
-
443
- return response.json().get("elementList", "No platforms found")
1216
+ return response
444
1217
 
445
- def get_platforms_by_name(
1218
+ async def _async_get_platforms_by_name(
446
1219
  self,
447
1220
  filter: str = None,
448
1221
  effective_time: str = None,
449
1222
  start_from: int = 0,
450
1223
  page_size: int = max_paging_size,
451
1224
  ) -> str | list:
452
- """Returns the list of platforms with a particular name. The name is specified in the filter.
1225
+ """Returns the list of platforms with a particular name. The name is specified in the filter. Async version.
453
1226
 
454
1227
  Parameters
455
1228
  ----------
@@ -457,9 +1230,10 @@ class RuntimeManager(Client):
457
1230
  Filter specifies the display name or qualified name of the platforms to return information for. If the
458
1231
  value is None, we will default to the default_platform_name that comes from the core content pack.
459
1232
  effective_time: str, optional
460
- Timeframe to return information for. Time format is "YYYY-MM-DDTHH:MM:SS" (ISO 8601).
1233
+ Timeframe to return information for. Time format is "YYYY-MM-DDTHH:MM:SS" (ISO 8601).
461
1234
  start_from : int, optional
462
1235
  The index from which to start fetching the engine actions. Default is 0.
1236
+
463
1237
  page_size : int, optional
464
1238
  The maximum number of engine actions to fetch in a single request. Default is `max_paging_size`.
465
1239
 
@@ -473,14 +1247,24 @@ class RuntimeManager(Client):
473
1247
  InvalidParameterException
474
1248
  PropertyServerException
475
1249
  UserNotAuthorizedException
1250
+
476
1251
  """
477
- loop = asyncio.get_event_loop()
478
- response = loop.run_until_complete(
479
- self._async_get_platforms_by_name(
480
- filter, effective_time, start_from, page_size
481
- )
1252
+
1253
+ if filter is None:
1254
+ filter = self.default_platform_name
1255
+
1256
+ url = (
1257
+ f"{self.cur_command_root}/platforms/by-name?"
1258
+ f"startFrom={start_from}&pageSize={page_size}"
482
1259
  )
483
- return response
1260
+ if effective_time is not None:
1261
+ body = {"filter": filter, "effectiveTime": effective_time}
1262
+ else:
1263
+ body = {"filter": filter}
1264
+
1265
+ response = await self._async_make_request("POST", url, body)
1266
+
1267
+ return response.json().get("elements", "No platforms found")
484
1268
 
485
1269
  async def _async_get_platforms_by_type(
486
1270
  self,
@@ -490,7 +1274,7 @@ class RuntimeManager(Client):
490
1274
  page_size: int = max_paging_size,
491
1275
  ) -> str | list:
492
1276
  """Returns the list of platforms with a particular deployed implementation type. The value is specified in
493
- the filter. If it is null, or no request body is supplied, all platforms are returned. Async version.
1277
+ the filter. If it is null, or no request body is supplied, all platforms are returned. Async version.
494
1278
 
495
1279
  Parameters
496
1280
  ----------
@@ -521,7 +1305,7 @@ class RuntimeManager(Client):
521
1305
  filter = "OMAG Server Platform"
522
1306
 
523
1307
  url = (
524
- f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/runtime-manager/platforms/"
1308
+ f"{self.cur_command_root}/platforms/"
525
1309
  f"by-deployed-implementation-type?startFrom={start_from}&pageSize={page_size}"
526
1310
  )
527
1311
 
@@ -541,7 +1325,7 @@ class RuntimeManager(Client):
541
1325
  page_size: int = max_paging_size,
542
1326
  ) -> str | list:
543
1327
  """Returns the list of platforms with a particular deployed implementation type. The value is specified in
544
- the filter. If it is null, or no request body is supplied, all platforms are returned.
1328
+ the filter. If it is null, or no request body is supplied, all platforms are returned.
545
1329
 
546
1330
  Parameters
547
1331
  ----------
@@ -583,8 +1367,8 @@ class RuntimeManager(Client):
583
1367
  page_size: int = max_paging_size,
584
1368
  ) -> str | list:
585
1369
  """Returns the list of platform templates for a particular deployed implementation type. The value is
586
- specified in the filter. If it is null, or no request body is supplied, all platforms are returned.
587
- Async version.
1370
+ specified in the filter. If it is null, or no request body is supplied, all platforms are returned.
1371
+ Async version.
588
1372
 
589
1373
  Parameters
590
1374
  ----------
@@ -615,7 +1399,7 @@ class RuntimeManager(Client):
615
1399
  filter = "OMAG Server Platform"
616
1400
 
617
1401
  url = (
618
- f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/runtime-manager/platforms/"
1402
+ f"{self.cur_command_root}/platforms/"
619
1403
  f"by-deployed-implementation-type?startFrom={start_from}&pageSize={page_size}&getTemplates=true"
620
1404
  )
621
1405
 
@@ -635,7 +1419,7 @@ class RuntimeManager(Client):
635
1419
  page_size: int = max_paging_size,
636
1420
  ) -> str | list:
637
1421
  """Returns the list of platform templates with a particular deployed implementation type. The value is
638
- specified in the filter. If it is null, or no request body is supplied, all platforms are returned.
1422
+ specified in the filter. If it is null, or no request body is supplied, all platforms are returned.
639
1423
 
640
1424
  Parameters
641
1425
  ----------
@@ -690,7 +1474,7 @@ class RuntimeManager(Client):
690
1474
 
691
1475
  """
692
1476
 
693
- url = f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/runtime-manager/platforms/{platform_guid}/report"
1477
+ url = f"{self.cur_command_root}/platforms/{platform_guid}/report"
694
1478
 
695
1479
  response = await self._async_make_request("GET", url)
696
1480
 
@@ -744,7 +1528,7 @@ class RuntimeManager(Client):
744
1528
 
745
1529
  """
746
1530
 
747
- url = f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/runtime-manager/platforms/{platform_guid}"
1531
+ url = f"{self.cur_command_root}/platforms/{platform_guid}"
748
1532
 
749
1533
  if effective_time is not None:
750
1534
  body = {"effectiveTime": effective_time}
@@ -812,7 +1596,7 @@ class RuntimeManager(Client):
812
1596
 
813
1597
  """
814
1598
 
815
- url = f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/runtime-manager/software-servers/{server_guid}"
1599
+ url = f"{self.cur_command_root}/software-servers/{server_guid}"
816
1600
 
817
1601
  if effective_time is not None:
818
1602
  body = {"effectiveTime": effective_time}
@@ -888,7 +1672,7 @@ class RuntimeManager(Client):
888
1672
  """
889
1673
 
890
1674
  url = (
891
- f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/runtime-manager/software-servers/by-name?"
1675
+ f"{self.cur_command_root}/software-servers/by-name?"
892
1676
  f"startFrom={start_from}&pageSize={page_size}"
893
1677
  )
894
1678
 
@@ -939,8 +1723,8 @@ class RuntimeManager(Client):
939
1723
  page_size: int = max_paging_size,
940
1724
  ) -> str | list:
941
1725
  """Returns the list of servers with a particular deployed implementation type. The value is specified
942
- in the filter. If it is null, or no request body is supplied, all servers are returned.
943
- Async version.
1726
+ in the filter. If it is null, or no request body is supplied, all servers are returned.
1727
+ Async version.
944
1728
 
945
1729
  Parameters
946
1730
  ----------
@@ -971,7 +1755,7 @@ class RuntimeManager(Client):
971
1755
  filter = None
972
1756
 
973
1757
  url = (
974
- f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/runtime-manager/software-servers/"
1758
+ f"{self.cur_command_root}/software-servers/"
975
1759
  f"by-deployed-implementation-type?startFrom={start_from}&pageSize={page_size}"
976
1760
  )
977
1761
 
@@ -989,8 +1773,8 @@ class RuntimeManager(Client):
989
1773
  page_size: int = max_paging_size,
990
1774
  ) -> str | list:
991
1775
  """Returns the list of servers with a particular deployed implementation type.
992
- The value is specified in the filter. If it is null, or no request body is supplied,
993
- all servers are returned.
1776
+ The value is specified in the filter. If it is null, or no request body is supplied,
1777
+ all servers are returned.
994
1778
 
995
1779
  Parameters
996
1780
  ----------
@@ -1031,9 +1815,9 @@ class RuntimeManager(Client):
1031
1815
  start_from: int = 0,
1032
1816
  page_size: int = max_paging_size,
1033
1817
  ) -> str | list:
1034
- """Returns the list of view_server templates with a particular deployed implementation type. The value is
1035
- specified in the filter. If it is null, or no request body is supplied, all servers are returned.
1036
- Async version.
1818
+ """Returns the list of server templates with a particular deployed implementation type. The value is
1819
+ specified in the filter. If it is null, or no request body is supplied, all servers are returned.
1820
+ Async version.
1037
1821
 
1038
1822
  Parameters
1039
1823
  ----------
@@ -1064,7 +1848,7 @@ class RuntimeManager(Client):
1064
1848
  filter = None
1065
1849
 
1066
1850
  url = (
1067
- f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/runtime-manager/software-servers/"
1851
+ f"{self.cur_command_root}/software-servers/"
1068
1852
  f"by-deployed-implementation-type?startFrom={start_from}&pageSize={page_size}&getTemplates=true"
1069
1853
  )
1070
1854
 
@@ -1081,9 +1865,9 @@ class RuntimeManager(Client):
1081
1865
  start_from: int = 0,
1082
1866
  page_size: int = max_paging_size,
1083
1867
  ) -> str | list:
1084
- """Returns the list of view_server templates with a particular deployed implementation type.
1085
- The value is specified in the filter. If it is null, or no request body is supplied,
1086
- all servers are returned.
1868
+ """Returns the list of server templates with a particular deployed implementation type.
1869
+ The value is specified in the filter. If it is null, or no request body is supplied,
1870
+ all servers are returned.
1087
1871
 
1088
1872
  Parameters
1089
1873
  ----------
@@ -1123,7 +1907,7 @@ class RuntimeManager(Client):
1123
1907
  Parameters
1124
1908
  ----------
1125
1909
  server_guid: str
1126
- Identity of the view_server to report on.
1910
+ Identity of the server to report on.
1127
1911
 
1128
1912
  Returns
1129
1913
  -------
@@ -1138,25 +1922,19 @@ class RuntimeManager(Client):
1138
1922
 
1139
1923
  """
1140
1924
 
1141
- url = f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/runtime-manager/software-servers/{server_guid}/report"
1925
+ url = f"{self.cur_command_root}/omag-servers/{server_guid}/instance/report"
1142
1926
 
1143
1927
  response = await self._async_make_request("GET", url)
1144
1928
 
1145
- return response.json().get("elements", "No view_server found")
1929
+ return response.json().get("elements", "No server found")
1146
1930
 
1147
- def get_server_report(
1148
- self, server_guid: str = None, view_server: str = None
1149
- ) -> str | list:
1931
+ def get_server_report(self, server_guid: str = None) -> str | list:
1150
1932
  """Returns details about the running server.
1151
1933
 
1152
1934
  Parameters
1153
1935
  ----------
1154
1936
  server_guid: str
1155
- Identity of the view_server to report on.
1156
-
1157
- view_server : str, optional
1158
- The name of the view_server to get governance engine summaries from. If not provided, the default view_server name
1159
- will be used.
1937
+ Identity of the server to report on.
1160
1938
 
1161
1939
  Returns
1162
1940
  -------
@@ -1171,107 +1949,21 @@ class RuntimeManager(Client):
1171
1949
 
1172
1950
  """
1173
1951
  loop = asyncio.get_event_loop()
1174
- response = loop.run_until_complete(
1175
- self._async_get_server_report(server_guid, view_server)
1176
- )
1952
+ response = loop.run_until_complete(self._async_get_server_report(server_guid))
1177
1953
  return response
1178
1954
 
1179
- async def _async_add_archive_file(
1180
- self,
1181
- archive_file: str,
1182
- server_guid: str,
1183
- time_out: int = 60,
1184
- ) -> None:
1185
- """Add a new open metadata archive to running OMAG Server's repository.
1186
- An open metadata archive contains metadata types and instances. This operation loads an open metadata archive
1187
- that is stored in the named file. It can be used with OMAG servers that are of type Open Metadata Store.
1188
- Async version.
1189
-
1190
- https://egeria-project.org/concepts/open-metadata-archives/
1191
-
1192
- Parameters
1193
- ----------
1194
- archive_file: str
1195
- Open metadata archive file to load.
1196
- server_guid: str
1197
- GUID of the view_server to load the file into.
1198
- time_out: int, optional
1199
- Time out for the rest call.
1200
-
1201
- Returns
1202
- -------
1203
- Response
1204
- None
1205
-
1206
- Raises
1207
- ------
1208
- InvalidParameterException
1209
- PropertyServerException
1210
- UserNotAuthorizedException
1211
-
1212
- """
1213
-
1214
- url = f"{self.platform_url}/servers/{self.view_server}/api/open-metadata/runtime-manager/omag-servers/{server_guid}/instance/load/open-metadata-archives/file"
1215
-
1216
- await self._async_make_request(
1217
- "POST-DATA", url, archive_file, time_out=time_out
1218
- )
1219
- return
1220
-
1221
- def add_archive_file(
1222
- self,
1223
- archive_file: str,
1224
- server_guid: str,
1225
- time_out: int = 60,
1226
- ) -> None:
1227
- """Add a new open metadata archive to running OMAG Server's repository.
1228
- An open metadata archive contains metadata types and instances. This operation loads an open metadata archive
1229
- that is stored in the named file. It can be used with OMAG servers that are of type Open Metadata Store.
1230
-
1231
- https://egeria-project.org/concepts/open-metadata-archives/
1232
-
1233
- Parameters
1234
- ----------
1235
- archive_file: str
1236
- Open metadata archive file to load.
1237
- server_guid: str
1238
- GUID of the view_server to load the file into.
1239
-
1240
- Returns
1241
- -------
1242
- Response
1243
- None
1244
-
1245
- Raises
1246
- ------
1247
- InvalidParameterException
1248
- PropertyServerException
1249
- UserNotAuthorizedException
1250
-
1251
- """
1252
-
1253
- loop = asyncio.get_event_loop()
1254
- loop.run_until_complete(
1255
- self._async_add_archive_file(archive_file, server_guid, time_out)
1256
- )
1257
- return
1258
-
1259
1955
  #
1260
1956
  # Activate
1261
1957
  #
1262
1958
 
1263
1959
  async def _async_activate_with_stored_config(self, server_guid: str) -> None:
1264
- """Activate the Open Metadata and Governance (OMAG) view_server using the configuration document stored for this
1265
- server. Async Version
1960
+ """Activate the Open Metadata and Governance (OMAG) server using the configuration document stored for this
1961
+ server. Async Version
1266
1962
 
1267
1963
  Parameters
1268
1964
  ----------
1269
1965
  server_guid: str
1270
- Identity of the view_server to activate.
1271
-
1272
- view_server : str, optional
1273
- The name of the view_server to get governance engine summaries from. If not provided, the default view_server name
1274
- will be used.
1966
+ Identity of the server to activate.
1275
1967
 
1276
1968
  Returns
1277
1969
  -------
@@ -1289,17 +1981,13 @@ class RuntimeManager(Client):
1289
1981
 
1290
1982
  def activate_with_stored_config(self, server_guid: str) -> None:
1291
1983
  """Activate the Open Metadata and Governance (OMAG) server using the configuration document stored for this
1292
- server. Async Version
1984
+ server.
1293
1985
 
1294
1986
  Parameters
1295
1987
  ----------
1296
1988
  server_guid: str
1297
1989
  Identity of the server to activate.
1298
1990
 
1299
- view_server : str, optional
1300
- The name of the view_server to get governance engine summaries from. If not provided, the default view_server name
1301
- will be used.
1302
-
1303
1991
  Returns
1304
1992
  -------
1305
1993
  None